[all-commits] [llvm/llvm-project] ad8f0e: [clang][DepScan] Pass references to ModuleDeps ins...
Florian Mayer via All-commits
all-commits at lists.llvm.org
Tue Mar 25 14:59:37 PDT 2025
Branch: refs/heads/users/fmayer/spr/clang-sanitizer-add-pseudofunction-to-indicate-array-bounds-check
Home: https://github.com/llvm/llvm-project
Commit: ad8f0e27606e337d08501a3085390817d8223c0e
https://github.com/llvm/llvm-project/commit/ad8f0e27606e337d08501a3085390817d8223c0e
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
M clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
Log Message:
-----------
[clang][DepScan] Pass references to ModuleDeps instead of ModuleID in lookupModuleOutput callbacks, NFCI (#131688)
This allows clients to reference more read-only attributes, like IsInStableDirectories.
Commit: e5ec7bb21b3043022f0e69808b28b863570a6aad
https://github.com/llvm/llvm-project/commit/e5ec7bb21b3043022f0e69808b28b863570a6aad
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/CUFComputeSharedMemoryOffsetsAndSize.cpp
M flang/test/Fir/CUDA/cuda-shared-offset.mlir
Log Message:
-----------
[flang][cuda] Set correct offsets for multiple variables in dynamic shared memory (#131674)
Commit: 94426df66a8d7c2321f9e197e5ef9636b0d5ce70
https://github.com/llvm/llvm-project/commit/94426df66a8d7c2321f9e197e5ef9636b0d5ce70
Author: David Tellenbach <dtellenbach at apple.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M compiler-rt/test/profile/instrprof-darwin-exports.c
Log Message:
-----------
[compiler-rt][Darwin][x86] Fix instrprof-darwin-exports test (#131425)
ld64 issues a warning about section alignment which was counted as an
unexpected exported symbol and the test failed.
Fixed by disabling all linker warnings using -Wl,-w.
Commit: 092e25571c09d377d2dde835cf38c5698decadad
https://github.com/llvm/llvm-project/commit/092e25571c09d377d2dde835cf38c5698decadad
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/si-fold-operands-requires-ssa.mir
Log Message:
-----------
AMDGPU: Add REQUIRES: asserts to machine pass violation test
We should promote this to a proper error and not llvm_unreachable
Commit: a2fbc9a8e3d3822cea6f14299285ff0a440d1bf3
https://github.com/llvm/llvm-project/commit/a2fbc9a8e3d3822cea6f14299285ff0a440d1bf3
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M llvm/lib/Target/DirectX/CMakeLists.txt
A llvm/lib/Target/DirectX/DXILLegalizePass.cpp
A llvm/lib/Target/DirectX/DXILLegalizePass.h
M llvm/lib/Target/DirectX/DirectX.h
M llvm/lib/Target/DirectX/DirectXPassRegistry.def
M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
M llvm/test/CodeGen/DirectX/ResourceGlobalElimination.ll
A llvm/test/CodeGen/DirectX/legalize-i64-extract-insert-elements.ll
A llvm/test/CodeGen/DirectX/legalize-i8.ll
M llvm/test/CodeGen/DirectX/llc-pipeline.ll
M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
M llvm/test/CodeGen/DirectX/scalarize-two-calls.ll
Log Message:
-----------
[DirectX] Start the creation of a DXIL Instruction legalizer (#131221)
- Legalize i8 truncation back to original types
- remove sext and truncs
- Legalize i64 indicies for insert\extract elements to i32 indicies
- fixes https://github.com/llvm/llvm-project/issues/126323
- fixes https://github.com/llvm/llvm-project/issues/129757
Commit: cb1d640b037b068b42bcf851cdb4b2b85e378746
https://github.com/llvm/llvm-project/commit/cb1d640b037b068b42bcf851cdb4b2b85e378746
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
Log Message:
-----------
[clang][DepScan] resolve dangling reference to lambda that goes out of
scope.
Fixes buildbots.
Commit: 50f8adb5c018d993a4d8de69970a0b627b7f2258
https://github.com/llvm/llvm-project/commit/50f8adb5c018d993a4d8de69970a0b627b7f2258
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
M llvm/test/MC/RISCV/rvv/aliases.s
Log Message:
-----------
[RISCV] Accept '0(reg)' in addition to '(reg)' ifor vl1r.v/vl2r.v/vl4r.v/vl8r.v
This matches vl1re8.v, vl2re8.v, vl4re8.v, vl8re8.v.
Commit: d1156fcb56891fb1a426c3e8331a51d47f98a1b8
https://github.com/llvm/llvm-project/commit/d1156fcb56891fb1a426c3e8331a51d47f98a1b8
Author: Alexander Kornienko <alexfh at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/include/__charconv/tables.h
M libcxx/include/__charconv/to_chars_base_10.h
M libcxx/include/__charconv/to_chars_integral.h
M libcxx/include/__charconv/to_chars_result.h
M libcxx/include/__charconv/traits.h
M libcxx/include/__format/formatter_floating_point.h
M libcxx/include/__format/formatter_integral.h
M libcxx/include/__format/formatter_output.h
M libcxx/include/locale
M libcxx/include/module.modulemap
R libcxx/test/benchmarks/locale/num_put.bench.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_pointer.pass.cpp
Log Message:
-----------
Revert "[libc++] Optimize num_put integral functions" (#131613)
Reverts llvm/llvm-project#120859
This change breaks formatting of `0` with `std::showbase` + `std::hex`
or `std::oct`, as well as `+0` with `std::showpos`. I believe the new
behavior is violating the standard. See
https://github.com/llvm/llvm-project/pull/120859#issuecomment-2723970242
and later comments for details and explanation.
Commit: d9c65af62654edfdc1e4ff5589428916e4759302
https://github.com/llvm/llvm-project/commit/d9c65af62654edfdc1e4ff5589428916e4759302
Author: William Moses <gh at wsmoses.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
Log Message:
-----------
[MLIR][GPUToNVVM] Support 32-bit isfinite (#131699)
Co-authored-by: Ivan Radanov Ivanov <ivanov.i.aa at m.titech.ac.jp>
Commit: 745e16753fc154ac1601ebaf0ebbcdbfd380b948
https://github.com/llvm/llvm-project/commit/745e16753fc154ac1601ebaf0ebbcdbfd380b948
Author: Nikolay Panchenko <nicholas.panchenko at gmail.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M llvm/include/llvm/Support/JSON.h
M llvm/lib/Support/JSON.cpp
Log Message:
-----------
[JSON][NFC] Move print method out of NDEBUG || DUMP (#131639)
Commit: 4cb1430c1cc6c6c3ecfb092d3228dd1420332a33
https://github.com/llvm/llvm-project/commit/4cb1430c1cc6c6c3ecfb092d3228dd1420332a33
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M mlir/lib/Dialect/SPIRV/IR/SPIRVCanonicalization.cpp
M mlir/test/Dialect/SPIRV/Transforms/canonicalize.mlir
Log Message:
-----------
[mlir][spirv] Fix a crash in `spirv::ISubOp::fold` (#131570)
This PR fixes a crash if `spirv.ISub` is not integer type. Fixes
#131283.
Commit: a5107be0317af73a978431e9448f846974c51fca
https://github.com/llvm/llvm-project/commit/a5107be0317af73a978431e9448f846974c51fca
Author: Tim Gymnich <tim at gymni.ch>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
Log Message:
-----------
[NFC][AMDGPU][GlobalISel] Make LLTs constexpr (#131673)
- static const -> constexpr
Commit: 00cad3ed228005fa059c23c55bd35f042b624bf1
https://github.com/llvm/llvm-project/commit/00cad3ed228005fa059c23c55bd35f042b624bf1
Author: Jim Lin <jim at andestech.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum.ll
Log Message:
-----------
[SDAG] Handle extract_subvector in isKnownNeverNaN (#131581)
Propagate nnan across extract_subvector.
Commit: ed19620b8c93f27f322b2f40136e5bd428827e00
https://github.com/llvm/llvm-project/commit/ed19620b8c93f27f322b2f40136e5bd428827e00
Author: Elvis Wang <elvis.wang at sifive.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[VPlan] Make VPReductionRecipe a VPRecipeWithIRFlags. NFC (#130881)
This patch change the parent of the VPReductionRecipe from
VPSingleDefRecipe to VPRecipeWithIRFlags and also print/get/drop/control
flags by the VPRecipeWithIRFlags. This will remove the dependency of the
underlying instruction.
This patch also add a new function `setFastMathFlags()` to the
VPRecipeWithIRFlags because the entire reduction chain may contains
multiple instructions. And the underlying instruction may not contains
the corresponding flags for this reduction.
Split from #113903.
Commit: 297f6d9f6b215bd7f58cf500b979b94dedbba7bb
https://github.com/llvm/llvm-project/commit/297f6d9f6b215bd7f58cf500b979b94dedbba7bb
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M libcxx/utils/libcxx/test/features.py
Log Message:
-----------
[libc++] Fix check for _LIBCPP_HAS_NO_WIDE_CHARACTERS in features.py (#131675)
The patch that added the new locale Lit features was created before we
switched to a 0-1 macro for _LIBCPP_HAS_WIDE_CHARACTERS, leading to that
patch referring to the obsolete _LIBCPP_HAS_NO_WIDE_CHARACTERS macro
that is never defined nowadays.
Commit: 3c4b9317916ccd2e18c30b1540589518a4c7c88a
https://github.com/llvm/llvm-project/commit/3c4b9317916ccd2e18c30b1540589518a4c7c88a
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
Log Message:
-----------
Rename RISCVMCExpr::VK_RISCV_ to VK_. NFC
They implement relocation operators and are named VK_RISCV_ probably to
avoid confusion with `MCSymbolRefExpr::VariantKind`.
`MCSymbolRefExpr::VariantKind` is discouraged
(https://discourse.llvm.org/t/error-expected-relocatable-expression-with-mctargetexpr/84926/2)
and targets are migrating away from `MCSymbolRefExpr::VariantKind`.
Therefore, there is no need to make the name long in the presence of the
clear `RISCVMCExpr::` prefix.
Pull Request: https://github.com/llvm/llvm-project/pull/131489
Commit: e758237352f70fad028f3947e6f0404e50fec024
https://github.com/llvm/llvm-project/commit/e758237352f70fad028f3947e6f0404e50fec024
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-strip.rst
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[docs] Mention --discard-locals/--discard-all change for llvm-strip
PR #130704 updated llvm-strip as well.
Suggested by @nga888
Pull Request: https://github.com/llvm/llvm-project/pull/131491
Commit: c72f7958b04c07afbd0d56b2e4772c741f88de67
https://github.com/llvm/llvm-project/commit/c72f7958b04c07afbd0d56b2e4772c741f88de67
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
Log Message:
-----------
[BOLT] Fix the build
This is a follow-up for:
commit 3c4b9317916ccd2e18c30b1540589518a4c7c88a
Author: Fangrui Song <i at maskray.me>
Date: Mon Mar 17 20:05:28 2025 -0700
Commit: b9d27ac252265839354fffeacaa8f39377ed7424
https://github.com/llvm/llvm-project/commit/b9d27ac252265839354fffeacaa8f39377ed7424
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M llvm/lib/MC/MCExpr.cpp
Log Message:
-----------
[MC] Fix formatting of a comment
Commit: 0813c5cf5f5297a479bdd83df23d59622f8573b0
https://github.com/llvm/llvm-project/commit/0813c5cf5f5297a479bdd83df23d59622f8573b0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
M llvm/test/MC/RISCV/rvv/aliases.s
Log Message:
-----------
[RISCV] Accept '0(reg)' in addition to '(reg)' for vle1.v/vse1.v
Commit: bdb63208b4130aa3811c6f8b6b8b82c5b069eca9
https://github.com/llvm/llvm-project/commit/bdb63208b4130aa3811c6f8b6b8b82c5b069eca9
Author: Vikash Gupta <Vikash.Gupta at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
M llvm/test/CodeGen/AMDGPU/spill-partial-csr-sgpr-live-ins.mir
M llvm/test/CodeGen/AMDGPU/spill-sgpr-to-virtual-vgpr.mir
Log Message:
-----------
[AMDGPU][CodeGen] Using MBB's liveIn check in tandem with MCRegAliasIterator in SILowerSGPRSpills (#129848)
This patch replaces use of MachineRegisterInfo's liveIn check with the
machine basicBlock's liveIn. As the MRI's liveIn is inconsistent with
the entry MBB liveIns, when it comes to the machine verifier checks.
PS: Its an alternative solution with respect to #126926.
Commit: 0f34eba48a6b28a20dc09cbb531c1142f7e3549b
https://github.com/llvm/llvm-project/commit/0f34eba48a6b28a20dc09cbb531c1142f7e3549b
Author: Sushant Gokhale <sgokhale at nvidia.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/sve-fixed-length-sdiv-pow2.ll
Log Message:
-----------
[NFC][AArch64] test for fixed-width vector signed division with pow2-divisor and SVE enabled (#130252)
With SVE enabled, this should generate asrd instruction. Subsequent
patch will address this.
Commit: 6be6400848eeec027d0cca0662c105683bcc896b
https://github.com/llvm/llvm-project/commit/6be6400848eeec027d0cca0662c105683bcc896b
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h
M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp
M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.h
M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
Log Message:
-----------
[LiveDebugValues][NFC] Remove TargetPassConfig from LDVImpl (#131562)
TPC is only used to access the option `ShouldEmitDebugEntryValues`.
Commit: 2f808dd0702ba3c364eb4373714a1fb09078909d
https://github.com/llvm/llvm-project/commit/2f808dd0702ba3c364eb4373714a1fb09078909d
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/records.cpp
Log Message:
-----------
[clang][bytecode] Compile most recent function decl (#131730)
We used to always do this because all calls went through the code path
that calls getMostRecentDecl(). Do it now, too.
Commit: 478194116083d4b0be790a7511955447165ed38c
https://github.com/llvm/llvm-project/commit/478194116083d4b0be790a7511955447165ed38c
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
M clang/test/Analysis/Checkers/WebKit/mock-system-header.h
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.mm
Log Message:
-----------
[alpha.webkit.UncountedCallArgsChecker] os_log functions should be treated as safe. (#131500)
…os_log functions should be treated as safe in call arguments checkers.
Also treat __builtin_* functions and __libcpp_verbose_abort functions as
"trivial" for the purpose in call argument checkers.
Commit: 1fbfef9b8ac684483619811d9e90cf8e1f84c6ee
https://github.com/llvm/llvm-project/commit/1fbfef9b8ac684483619811d9e90cf8e1f84c6ee
Author: Petr Hosek <phosek at google.com>
Date: 2025-03-17 (Mon, 17 Mar 2025)
Changed paths:
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/scanf_core/CMakeLists.txt
R libc/src/stdio/scanf_core/converter.cpp
M libc/src/stdio/scanf_core/converter.h
M libc/src/stdio/scanf_core/current_pos_converter.h
R libc/src/stdio/scanf_core/float_converter.cpp
M libc/src/stdio/scanf_core/float_converter.h
R libc/src/stdio/scanf_core/int_converter.cpp
M libc/src/stdio/scanf_core/int_converter.h
R libc/src/stdio/scanf_core/ptr_converter.cpp
M libc/src/stdio/scanf_core/ptr_converter.h
M libc/src/stdio/scanf_core/reader.h
R libc/src/stdio/scanf_core/scanf_main.cpp
M libc/src/stdio/scanf_core/scanf_main.h
R libc/src/stdio/scanf_core/string_converter.cpp
M libc/src/stdio/scanf_core/string_converter.h
A libc/src/stdio/scanf_core/string_reader.h
M libc/src/stdio/scanf_core/vfscanf_internal.h
M libc/src/stdio/sscanf.cpp
M libc/src/stdio/vsscanf.cpp
M libc/test/src/stdio/scanf_core/CMakeLists.txt
M libc/test/src/stdio/scanf_core/converter_test.cpp
M libc/test/src/stdio/scanf_core/reader_test.cpp
Log Message:
-----------
[libc] Templatize the scanf Reader interface (#131037)
This allows specializing the implementation for different targets
without including unnecessary logic and is similar to #111559 which did
the same for printf Writer interface.
Commit: fc38982e93d12e0a77cdd8d9068bafdc79a75ce7
https://github.com/llvm/llvm-project/commit/fc38982e93d12e0a77cdd8d9068bafdc79a75ce7
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/include/llvm/ADT/SetVector.h
M llvm/unittests/ADT/SetVectorTest.cpp
Log Message:
-----------
[ADT] Add SetVector::insert_range (#131715)
This patch adds SetVector::insert_range for consistency with
DenseSet::insert_range and std::set::insert_range from C++23.
Commit: 2df02548289faa34629814fd851667d45db0bb1b
https://github.com/llvm/llvm-project/commit/2df02548289faa34629814fd851667d45db0bb1b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/include/llvm/ADT/SmallSet.h
M llvm/unittests/ADT/SmallSetTest.cpp
Log Message:
-----------
[ADT] Add SmallSet::insert_range (#131717)
This patch adds SmallSet::insert_range for consistency with
DenseSet::insert_range and std::set::insert_range from C++23.
Commit: f6ad65a8248d8fdc03b602891aabbdf715e589b0
https://github.com/llvm/llvm-project/commit/f6ad65a8248d8fdc03b602891aabbdf715e589b0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/include/llvm/ADT/SmallPtrSet.h
M llvm/unittests/ADT/SmallPtrSetTest.cpp
Log Message:
-----------
[ADT] Add SmallPtrSet::insert_range (#131716)
This pach adds SmallPtrSet::insert_range for consistency with
DenseSet::insert_range and std::set::insert_range from C++23.
Commit: 62204482c02e896d7c86b2483952169968ad1ae5
https://github.com/llvm/llvm-project/commit/62204482c02e896d7c86b2483952169968ad1ae5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
Log Message:
-----------
[CodeGen] Avoid repeated hash lookups (NFC) (#131722)
Commit: 58dd3eda4e3d0e8a4dd3a5f1267ee259cdb5442c
https://github.com/llvm/llvm-project/commit/58dd3eda4e3d0e8a4dd3a5f1267ee259cdb5442c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
Log Message:
-----------
[Utils] Avoid repeated hash lookups (NFC) (#131723)
Commit: 57dc71352c75f88e6819314b2b0e81a62bf285e9
https://github.com/llvm/llvm-project/commit/57dc71352c75f88e6819314b2b0e81a62bf285e9
Author: lorenzo chelini <l.chelini at icloud.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
Log Message:
-----------
[MLIR][Bufferization] Retire `enforce-aliasing-invariants` (#130929)
Why? This option can lead to incorrect IR if used in isolation, for
example, consider the IR below:
```mlir
func.func @loop_with_aliasing(%arg0: tensor<5xf32>, %arg1: index, %arg2: index) -> tensor<5xf32> {
%c1 = arith.constant 1 : index
%cst = arith.constant 1.000000e+00 : f32
%0 = tensor.empty() : tensor<5xf32>
%1 = linalg.fill ins(%cst : f32) outs(%0 : tensor<5xf32>) -> tensor<5xf32>
// The BufferizableOpInterface says that %2 alias with %arg0 or be a newly
// allocated buffer
%2 = scf.for %arg3 = %arg1 to %arg2 step %c1 iter_args(%arg4 = %arg0) -> (tensor<5xf32>) {
scf.yield %1 : tensor<5xf32>
}
%cst_0 = arith.constant 1.000000e+00 : f32
%inserted = tensor.insert %cst_0 into %1[%c1] : tensor<5xf32>
return %2 : tensor<5xf32>
}
```
If we bufferize with: enforce-aliasing-invariants=false, we get:
```
func.func @loop_with_aliasing(%arg0: memref<5xf32, strided<[?], offset: ?>>, %arg1: index, %arg2: index) -> memref<5xf32, strided<[?], offset: ?>> {
%c1 = arith.constant 1 : index
%cst = arith.constant 1.000000e+00 : f32
%alloc = memref.alloc() {alignment = 64 : i64} : memref<5xf32>
linalg.fill ins(%cst : f32) outs(%alloc : memref<5xf32>)
%0 = scf.for %arg3 = %arg1 to %arg2 step %c1 iter_args(%arg4 = %arg0) -> (memref<5xf32, strided<[?], offset: ?>>) {
%cast = memref.cast %alloc : memref<5xf32> to memref<5xf32, strided<[?], offset: ?>>
scf.yield %cast : memref<5xf32, strided<[?], offset: ?>>
}
%cst_0 = arith.constant 1.000000e+00 : f32
memref.store %cst_0, %alloc[%c1] : memref<5xf32>
return %0 : memref<5xf32, strided<[?], offset: ?>>
}
```
Which is not correct IR since the loop yields the allocation.
I am using this option. What do I need to do now?
If you are using this option in isolation, you are possibly generating
incorrect IR, so you need to revisit your bufferization strategy. If you
are using it together with `copyBeforeWrite,` you simply need to retire
the `enforceAliasingInvariants` option.
Co-authored-by: Matthias Springer <mspringer at nvidia.com>
Commit: 489d1e764e973fc0d46bad93e46ca156ded5b406
https://github.com/llvm/llvm-project/commit/489d1e764e973fc0d46bad93e46ca156ded5b406
Author: Mel Chen <mel.chen at sifive.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse-output.ll
Log Message:
-----------
[LV][NFC] Pre-commit test for supporting strided accesses. (#130563)
Duplicate riscv-vector-reverse.ll as riscv-vector-reverse-output.ll to
verify all generated IR, not just debug output.
Pre-commit for #128718.
Commit: e614e840bc6419ecde584605f2b813dcda7582e7
https://github.com/llvm/llvm-project/commit/e614e840bc6419ecde584605f2b813dcda7582e7
Author: Matthias Springer <me at m-sp.org>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M mlir/lib/Dialect/MemRef/Transforms/RuntimeOpVerification.cpp
M mlir/lib/Transforms/GenerateRuntimeVerification.cpp
M mlir/test/Integration/Dialect/MemRef/cast-runtime-verification.mlir
A mlir/test/Integration/Dialect/MemRef/dim-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/load-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/reinterpret-cast-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/subview-runtime-verification.mlir
Log Message:
-----------
[mlir][memref] Add runtime verification for `memref.dim` (#130410)
Add runtime verification for `memref.dim`: check that the index is in
bounds.
Also simplify the pass pipeline for all memref runtime verification
checks.
Commit: bd1be8a242384d98ef2087f4571b464e01501f5a
https://github.com/llvm/llvm-project/commit/bd1be8a242384d98ef2087f4571b464e01501f5a
Author: David Green <david.green at arm.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/SPIRV/SPIRVISelLowering.h
M llvm/lib/Target/SystemZ/SystemZISelLowering.h
Log Message:
-----------
[CodeGen][GlobalISel] Add a getVectorIdxWidth and getVectorIdxLLT. (#131526)
>From #106446, this adds a variant of getVectorIdxTy that returns an LLT.
Many uses only look at the width, so a getVectorIdxWidth was added as
the common base.
Commit: 44e4b27aec8639823030dd90eb04afa6545c8352
https://github.com/llvm/llvm-project/commit/44e4b27aec8639823030dd90eb04afa6545c8352
Author: Lucas Duarte Prates <lucas.prates at arm.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/test/Driver/apple-arm64-arch.c
M clang/test/Driver/compilation_database_multiarch.c
M clang/test/Driver/darwin-ld-platform-version-macos-requires-darwin.c
M clang/test/Driver/mtargetos-darwin.c
M clang/test/Driver/xros-driver-requires-darwin-host.c
M clang/test/Index/pch-from-libclang.c
Log Message:
-----------
[clang] Fix darwin-related tests' REQUIRES annotation (#130138)
The tests updated by this commit were designed to check features in the
clang's driver and index that require clang to be targgeting a darwin
platform while running on a darwin host. For that, their execution is
currently gated by the `REQUIRES: system-darwin` annotation.
This approach becomes a problem when trying to run such tests on a
cross-compiling build of clang on a darwin platform. When the default
target is not darwin (e.g. via `LLVM_DEFAULT_TARGET_TRIPLE `), the
tests will still run on a darwin host and fail spuriously because of the
mismatch with the target detection.
To fix this issue, this patch introduces an extra condition to the
tests' REQUIRES annotation, `target={{.*}}-{{darwin|macos}}{{.*}}`,
ensuring they only run when the relevant target is present.
Commit: 49b8d8472f9852883677d0a2b192ce1ddd877d0a
https://github.com/llvm/llvm-project/commit/49b8d8472f9852883677d0a2b192ce1ddd877d0a
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
A mlir/test/Target/LLVMIR/openmp-distribute-private.mlir
M mlir/test/Target/LLVMIR/openmp-todo.mlir
Log Message:
-----------
[OpenMP][MLIR] Support LLVM translation for `distribute` with delayed privatization (#131564)
Adds support for tranlating delayed privatization (`private` and
`firstprivate`) for `omp.distribute` ops.
Commit: c42952a782a65d7988e3cb81e920662cc97c1b1e
https://github.com/llvm/llvm-project/commit/c42952a782a65d7988e3cb81e920662cc97c1b1e
Author: Srinivasa Ravi <srinivasar at nvidia.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
M mlir/test/Dialect/LLVMIR/nvvm.mlir
M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
M mlir/test/Target/LLVMIR/nvvmir.mlir
Log Message:
-----------
[MLIR][NVVM] Add support for match.sync Op (#130718)
This change adds the `match.sync` Op to the MLIR NVVM dialect to
generate the `match.sync` PTX instruction.
PTX Spec Reference:
https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#parallel-synchronization-and-communication-instructions-match-sync
Commit: 194eceff4327912e6f9167478262961d50516750
https://github.com/llvm/llvm-project/commit/194eceff4327912e6f9167478262961d50516750
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
A clang/test/utils/update_cc_test_checks/Inputs/filter_out_after.c
A clang/test/utils/update_cc_test_checks/Inputs/filter_out_after.c.expected
A clang/test/utils/update_cc_test_checks/filter_out_after.test
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/filter-out-after.ll
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/filter-out-after.ll.expected
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/filter-out-after.ll.expected2
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/filter-out-after2.ll
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/filter-out-after2.ll.expected
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/filter-out-after3.ll
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/filter-out-after3.ll.expected
A llvm/test/tools/UpdateTestChecks/update_test_checks/filter_out_after.test
M llvm/utils/UpdateTestChecks/common.py
Log Message:
-----------
update_test_checks: add new --filter-out-after option (#129739)
Whilst trying to clean up some loop vectoriser IR tests (see
test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
for example) a reviewer on PR #129047 suggested it would be
nice to have an option to stop generating CHECK lines after a
certain point. Typically when performing a transformation with
the loop vectoriser we don't usually care about any CHECK lines
generated for the scalar tail of the loop, since the scalar
loop is kept intact. Previously if you wanted to eliminate such
unwanted CHECK lines you had to run the update script, then
manually delete all the lines corresponding to the scalar loop.
This can be very time consuming if the tests ever need changing.
What I've tried to do here is add a new --filter-out-after
option alongside the existing --filter* options that provides
support for stopping the generation of any CHECK lines beyond
the line that matches the filter. With the existing filter
options we never generate CHECK-NEXT lines, but we still care
about ordering with --filter-out-after so I've amended the
code to ensure we treat this filter differently.
Commit: 036c6cb37c5647017f98291b3ecd6fb5a2ee2cf4
https://github.com/llvm/llvm-project/commit/036c6cb37c5647017f98291b3ecd6fb5a2ee2cf4
Author: quic_hchandel <quic_hchandel at quicinc.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
A llvm/test/MC/RISCV/xqcibi-invalid.s
A llvm/test/MC/RISCV/xqcibi-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add Qualcomm uC Xqcibi (Branch Immediate) extension (#130779)
This extension adds twelve conditional branch instructions that use an
immediate operand for the source.
The current spec can be found at:
https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.7.0
This patch adds assembler only support.
Co-authored-by: Sudharsan Veeravalli <quic_svs at quicinc.com>
Commit: 1094ffcafbc909cf4caecaf331e97ef16250e42d
https://github.com/llvm/llvm-project/commit/1094ffcafbc909cf4caecaf331e97ef16250e42d
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/lib/Optimizer/Dialect/FIROps.cpp
A flang/test/Fir/do_concurrent.fir
M flang/test/Fir/invalid.fir
Log Message:
-----------
[flang][fir] Add MLIR op for `do concurrent` (#130893)
Adds new MLIR ops to model `do concurrent`. In order to make `do
concurrent` representation self-contained, a loop is modeled using 2
ops, one wrapper and one that contains the actual body of the loop. For
example, a 2D `do concurrent` loop is modeled as follows:
```mlir
fir.do_concurrent {
%i = fir.alloca i32
%j = fir.alloca i32
fir.do_concurrent.loop
(%i_iv, %j_iv) = (%i_lb, %j_lb) to (%i_ub, %j_ub) step (%i_st, %j_st) {
%0 = fir.convert %i_iv : (index) -> i32
fir.store %0 to %i : !fir.ref<i32>
%1 = fir.convert %j_iv : (index) -> i32
fir.store %1 to %j : !fir.ref<i32>
}
}
```
The `fir.do_concurrent` wrapper op encapsulates both the actual loop and
the allocations required for the iteration variables. The
`fir.do_concurrent.loop` op is a multi-dimensional op that contains the
loop control and body. See the ops' docs for more info.
Commit: 4ad0aa73b7d1ee36c1b1e06ac585798992075102
https://github.com/llvm/llvm-project/commit/4ad0aa73b7d1ee36c1b1e06ac585798992075102
Author: Valery Pykhtin <valery.pykhtin at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/unittests/Transforms/Utils/SSAUpdaterBulkTest.cpp
Log Message:
-----------
[SSAUpdaterBulk] Add expectedly failing loop tests. (#131761)
These tests demonstrate the issue in SSAUpdaterBulk when it calculates
incoming values from loop back edges.
The failures are marked with `EXPECT_NONFATAL_FAILURE`, which is the way
to designate an "expected fail" in the Google Test suite.
Commit: f406b28f8ba0fa660e8a7b6cafc6986675abfcbf
https://github.com/llvm/llvm-project/commit/f406b28f8ba0fa660e8a7b6cafc6986675abfcbf
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/aarch64-neon-vector-insert-uaddlv.ll
A llvm/test/CodeGen/AArch64/aarch64-sve-ldst-one.ll
M llvm/test/CodeGen/AArch64/add.ll
M llvm/test/CodeGen/AArch64/andorxor.ll
M llvm/test/CodeGen/AArch64/bitcast.ll
M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
M llvm/test/CodeGen/AArch64/ctlz.ll
M llvm/test/CodeGen/AArch64/ctpop.ll
M llvm/test/CodeGen/AArch64/cttz.ll
M llvm/test/CodeGen/AArch64/mul.ll
M llvm/test/CodeGen/AArch64/neon-rshrn.ll
M llvm/test/CodeGen/AArch64/neon-truncstore.ll
M llvm/test/CodeGen/AArch64/sadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/shufflevector.ll
M llvm/test/CodeGen/AArch64/ssub_sat_vec.ll
M llvm/test/CodeGen/AArch64/store.ll
M llvm/test/CodeGen/AArch64/sub.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-bitcast.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ld2-alloca.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-masked-gather-scatter.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-optimize-ptrue.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-stores.ll
M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/usub_sat_vec.ll
Log Message:
-----------
[AArch64][SVE] Fold integer lane extract and store to FPR store (#129756)
This helps avoid pointless fmovs to GPRs, which may be slow, especially
in streaming mode.
Commit: f7716047c6b1379722e4523d3f3a5177fa50d323
https://github.com/llvm/llvm-project/commit/f7716047c6b1379722e4523d3f3a5177fa50d323
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/lib/AST/ItaniumMangle.cpp
Log Message:
-----------
[Clang][NFC] Cleanup UnaryExprOrTypeTraitExpr itanium mangling code (#131764)
Just removing some code duplication.
Extracted from #131515
Commit: c5fe075eaf92edf31f7b73d38fc59bf56bf4f3bb
https://github.com/llvm/llvm-project/commit/c5fe075eaf92edf31f7b73d38fc59bf56bf4f3bb
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/test/CodeGen/AMDGPU/promote-alloca-array-aggregate.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-budget-exhausted.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-loadstores.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-max-regs.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-memset.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-multidim.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-non-constant-index.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-pointer-array.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-subvecs.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-vector-to-vector.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-vgpr-ratio.ll
M llvm/test/CodeGen/AMDGPU/sdwa-peephole.ll
M llvm/test/CodeGen/AMDGPU/vector-alloca-bitcast.ll
M llvm/test/CodeGen/AMDGPU/vector-alloca-limits.ll
Log Message:
-----------
AMDGPU: Use freeze poison instead of undef in alloca promotion (#131285)
Previously the value created to represent the uninitialized memory
of the alloca was undef. Use freeze poison instead. Enables some
optimization improvements (which need defeating in the limit tests),
but also a few regressions. Seems to leave behind dead code in some
cases too.
Commit: 8392573469b4a111c033ee0887f8115b21e2dcd2
https://github.com/llvm/llvm-project/commit/8392573469b4a111c033ee0887f8115b21e2dcd2
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll
Log Message:
-----------
AMDGPU: Replace unused export inputs with poison instead of undef (#131286)
Commit: 052eca9ff74eaa6df8e15b6af6161ec2801e61b5
https://github.com/llvm/llvm-project/commit/052eca9ff74eaa6df8e15b6af6161ec2801e61b5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll
Log Message:
-----------
AMDGPU: Replace unused update.dpp inputs with poison instead of undef (#131287)
Commit: c180fc80dc1d151e740ae477bfa327aba94704dc
https://github.com/llvm/llvm-project/commit/c180fc80dc1d151e740ae477bfa327aba94704dc
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll
Log Message:
-----------
AMDGPU: Replace unused permlane inputs with poison instead of undef (#131288)
Commit: 586580742123a8e3c1032369e8a2750c2c49685f
https://github.com/llvm/llvm-project/commit/586580742123a8e3c1032369e8a2750c2c49685f
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
M clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
Log Message:
-----------
Reapply "[analyzer] Delay the checker constructions after parsing" (#128369)
Reapply "[analyzer] Delay the checker constructions after parsing"
(#128350)
This reverts commit db836edf47f36ed04cab919a7a2c4414f4d0d7e6, as-is.
Depends on #128368
Commit: 0a21ef9536e0f591d334b230bd388bcb503e27ec
https://github.com/llvm/llvm-project/commit/0a21ef9536e0f591d334b230bd388bcb503e27ec
Author: Diana Picus <Diana-Magda.Picus at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/test/CodeGen/AMDGPU/pal-metadata-3.0-callable.ll
M llvm/test/CodeGen/AMDGPU/pal-metadata-3.0.ll
Log Message:
-----------
[AMDGPU] Add SubtargetFeature for dynamic VGPR mode (#130030)
This represents a hardware mode supported only for wave32 compute
shaders. When enabled, we set the `.dynamic_vgpr_en` field of
`.compute_registers` to true in the PAL metadata.
This will be changed to use an attribute after downstream consumers
have been migrated.
Commit: 5d53a88416dbf9e5771ff66ec744f96e59ebabb4
https://github.com/llvm/llvm-project/commit/5d53a88416dbf9e5771ff66ec744f96e59ebabb4
Author: quic_hchandel <quic_hchandel at quicinc.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
Log Message:
-----------
[RISCV] Change RISCVMCExpr::VK_RISCV_None to RISCVMCExpr::VK_None (#131774)
Fix RISCVMCExpr::VK_RISCV_None which were added in #130779
Commit: 31e98c70370c7498891d4fb075a6b2b81885b0dd
https://github.com/llvm/llvm-project/commit/31e98c70370c7498891d4fb075a6b2b81885b0dd
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/abs-codesize.ll
R llvm/test/Analysis/CostModel/X86/abs-latency.ll
R llvm/test/Analysis/CostModel/X86/abs-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/abs.ll
Log Message:
-----------
[CostModel][X86] merge abs costs tests using -cost-kind=all (#131619)
Now that we have #130490 - merge the cost test files to avoid bitrot
Lots more set of files to do - but this is give an example
Commit: 9cf46fb2303627fd2c74ed88dcd9f3f8cbfe0c93
https://github.com/llvm/llvm-project/commit/9cf46fb2303627fd2c74ed88dcd9f3f8cbfe0c93
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Lex/Lexer.h
M clang/lib/Lex/Lexer.cpp
M clang/lib/Lex/LiteralSupport.cpp
A clang/test/C/C2y/n3353.c
M clang/www/c_status.html
Log Message:
-----------
[C2y] Add octal prefixes, deprecate unprefixed octals (#131626)
WG14 N3353 added support for 0o and 0O as octal literal prefixes. It
also deprecates use of octal literals without a prefix, except for the
literal 0.
This feature is being exposed as an extension in older C language modes
as well as in all C++ language modes.
Commit: 332f0603635d06986d6d3c8c9ba4fee04c7cab18
https://github.com/llvm/llvm-project/commit/332f0603635d06986d6d3c8c9ba4fee04c7cab18
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/constant-address-space-32bit.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
A llvm/test/CodeGen/AMDGPU/fold-gep-offset.ll
M llvm/test/CodeGen/AMDGPU/memory_clause.ll
A llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/preserve-inbounds.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/split-gep-and-gvn-addrspace-addressing-modes.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/split-gep-and-gvn.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/split-gep.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/split-gep-and-gvn.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/split-gep.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/RISCV/split-gep.ll
M llvm/test/Transforms/StraightLineStrengthReduce/AMDGPU/reassociate-geps-and-slsr-addrspace.ll
M llvm/test/Transforms/StraightLineStrengthReduce/NVPTX/reassociate-geps-and-slsr.ll
Log Message:
-----------
[SeparateConstOffsetFromGEP] Don't set unsound inbounds flag (#130616)
The language reference says about inbounds geps that "if the
getelementptr has any non-zero indices[...] [t]he base pointer has an in
bounds address of the allocated object that it is based on [and]
[d]uring the successive addition of offsets to the address, the
resulting pointer must remain in bounds of the allocated object at each
step."
If (gep inbounds p, (a + 5)) is translated to (gep [inbounds] (gep p,
a), 5) with p pointing to the beginning of an object and a=-4, as the
example in the comments suggests, that's the case for neither of the
resulting geps. Therefore, we need to clear the inbounds flag for both
geps.
We might want to use ValueTracking to check if a is known to be
non-negative to preserve the inbounds flags.
For the AMDGPU tests with scratch instructions, removing the unsound
inbounds flag means that AMDGPUDAGToDAGISel::isFlatScratchBaseLegal sees
no NUW flag at the pointer add, which prevents generation of scratch
instructions with immediate offsets.
For SWDEV-516125.
Commit: aea3ad8bd3a35adc021cf80b97fad073ece8737b
https://github.com/llvm/llvm-project/commit/aea3ad8bd3a35adc021cf80b97fad073ece8737b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi.ll
Log Message:
-----------
[X86] canCreateUndefOrPoisonForTargetNode - add handling for VPERMV3 intrinsic opcodes (#131768)
We already handle the X86ISD::VPERMV3 node type, but if we can handle equivalent cases before intrinsic lowering we can simplify the code further - e.g. #109272 before constant BUILD_VECTOR nodes gets lowered to constant pool loads.
Commit: 2586e7fcd8ea8485867a2af11daf8a4f42ece704
https://github.com/llvm/llvm-project/commit/2586e7fcd8ea8485867a2af11daf8a4f42ece704
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-no-dotprod.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub.ll
Log Message:
-----------
[LV][NFC] Tidy up partial reduction tests with filter-out-after option (#129047)
A few test files seemed to have been edited after using the
update_test_checks.py script, which can make life hard for
developers when trying to update these tests in future
patches. Also, the tests still had this comment at the top
; NOTE: Assertions have been autogenerated by ...
which could potentially be confusing, since they've not
strictly been auto-generated.
I've attempted to keep the spirit of the original tests by
excluding all CHECK lines after the scalar.ph IR block,
however I've done this by using a new option called
--filter-out-after to the update_test_checks.py script.
Commit: 3d631914677b58a5479b310f480ac76e27d41e7e
https://github.com/llvm/llvm-project/commit/3d631914677b58a5479b310f480ac76e27d41e7e
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-trunc-nowrap.ll
Log Message:
-----------
[X86] Ignore NSW when DstSVT is i32 (#131755)
We don't have PACKSS for i64->i32.
Fixes: https://godbolt.org/z/qb8nxnPbK, which was introduced by ddd2f57b
Commit: 23743f5bf974ed1171fd8123f8d2af0f43be3596
https://github.com/llvm/llvm-project/commit/23743f5bf974ed1171fd8123f8d2af0f43be3596
Author: SivanShani-Arm <sivan.shani at arm.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/include/llvm/Support/ELFAttrParserExtended.h
A llvm/test/MC/AArch64/build-attributes-asm-arch-specific-empty.s
A llvm/test/MC/AArch64/build-attributes-asm-arch-specific.s
Log Message:
-----------
[readobj][ELFExtendedAttrParser] Add destructor with error handling (#131783)
ELFExtendedAttrParser lacked a destructor that properly handled errors,
causing `llvm-readobj --arch-specific` to crash when the AArch64 Build
Attributes section was empty.
This commit adds error handling in the destructor and introduces test
files for `--arch-specific` to cover both an empty AArch64 Build
Attributes section and a populated one.
Fixes:
https://github.com/sivan-shani/llvm-project/commit/b1ebfac1859c4fd1db3620098f6af4fd98e6174d
Commit: 428b320bf31329559ee9f8dd888be4f86cfa68e8
https://github.com/llvm/llvm-project/commit/428b320bf31329559ee9f8dd888be4f86cfa68e8
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.members/allocate_at_least.pass.cpp
Log Message:
-----------
[libc++] Fix allocate_at_least test that assumes the size_type of the allocator (#131682)
If the size_type of the allocator is not the same as std::size_t, this
test would fail.
Commit: 84e44ae6b7319b7f02156d8ca12548f225299e91
https://github.com/llvm/llvm-project/commit/84e44ae6b7319b7f02156d8ca12548f225299e91
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/MCInstrAnalysis.h
M llvm/include/llvm/Object/ELFObjectFile.h
M llvm/lib/Object/ELFObjectFile.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
M llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp
M llvm/tools/llvm-objdump/llvm-objdump.cpp
Log Message:
-----------
[llvm-objdump] Pass MCSubtargetInfo to findPltEntries (NFC) (#131773)
It allows access to subtarget features, collected in llvm-objdump.cpp,
from findPltEntries, which will be used in
https://github.com/llvm/llvm-project/pull/130764.
Commit: 83658ddb1b58fa10cf5f8ac8dfbe794b7a3701bc
https://github.com/llvm/llvm-project/commit/83658ddb1b58fa10cf5f8ac8dfbe794b7a3701bc
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/test/Lower/OpenMP/distribute.f90
M flang/test/Lower/OpenMP/order-clause.f90
M flang/test/Transforms/stack-arrays-hlfir.f90
Log Message:
-----------
[flang][OpenMP] Enable delayed privatization by default for `omp.distribute` (#131574)
Switches delayed privatization for `omp.distribute` to be on by default:
controlled by the `-openmp-enable-delayed-privatization` instead of by
`-openmp-enable-delayed-privatization-staging`.
### GFortran & Fujitsu test suite results:
#### gfotran test-suite (this PR):
```
Testing Time: 34.51s
Passed: 6569
```
#### Fujitsu without changes (commit: 0813c5cf5f52):
```
Testing Time: 155.39s
Passed : 88325
Failed : 156
Executable Missing: 408
```
#### Fujitsu with changes (this PR):
```
Testing Time: 158.54s
Passed : 88325
Failed : 156
Executable Missing: 408
```
Commit: cbc5c11feca0a65a7731de8d6eb14fddf2f233aa
https://github.com/llvm/llvm-project/commit/cbc5c11feca0a65a7731de8d6eb14fddf2f233aa
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/test/Lower/OpenMP/declare-mapper.f90
Log Message:
-----------
[MLIR][OpenMP] Add Lowering support for implicitly linking to default declare mappers (#131006)
Commit: 4f5eed0a37cfeac9de0964ce1a9ecb72b804f1ed
https://github.com/llvm/llvm-project/commit/4f5eed0a37cfeac9de0964ce1a9ecb72b804f1ed
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/bswap-codesize.ll
R llvm/test/Analysis/CostModel/X86/bswap-latency.ll
R llvm/test/Analysis/CostModel/X86/bswap-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/bswap.ll
Log Message:
-----------
[CostModel][X86] merge bswap costs tests using -cost-kind=all (#131784)
Commit: a2d7451a13ad25a9c6bb96d0910ee700d863e030
https://github.com/llvm/llvm-project/commit/a2d7451a13ad25a9c6bb96d0910ee700d863e030
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/bitreverse-codesize.ll
R llvm/test/Analysis/CostModel/X86/bitreverse-latency.ll
R llvm/test/Analysis/CostModel/X86/bitreverse-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/bitreverse.ll
Log Message:
-----------
[CostModel][X86] merge bitreverse costs tests using -cost-kind=all (#131791)
Commit: 22c6674f1d9cfbbf485f2da4f8dfbd80d666d02f
https://github.com/llvm/llvm-project/commit/22c6674f1d9cfbbf485f2da4f8dfbd80d666d02f
Author: Maryam Moghadas <maryammo at ca.ibm.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsPowerPC.td
M llvm/lib/Target/PowerPC/PPCInstrFutureMMA.td
M llvm/lib/Target/PowerPC/PPCInstrInfo.td
M llvm/lib/Target/PowerPC/PPCInstrMMA.td
A llvm/test/CodeGen/PowerPC/dmf-outer-product.ll
M llvm/test/MC/Disassembler/PowerPC/ppc-encoding-ISAFuture.txt
M llvm/test/MC/Disassembler/PowerPC/ppc64le-encoding-ISAFuture.txt
M llvm/test/MC/PowerPC/ppc-encoding-ISAFuture.s
Log Message:
-----------
[PowerPC] Add Dense Math binary integer outer-Product accumulate to DMR Instructions (#130791)
This commit adds the following Dense Math Facility integer calculation
instructions: dmxvi8gerx4, dmxvi8gerx4pp, dmxvi8gerx4spp, pmdmxvi8gerx4,
pmdmxvi8gerx4pp, and pmdmxvi8gerx4spp, along with their corresponding
intrinsics and tests.
Commit: 2fbfbf499eabb84024541060c61f0d88e882c167
https://github.com/llvm/llvm-project/commit/2fbfbf499eabb84024541060c61f0d88e882c167
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M cmake/Modules/FindPrefixFromConfig.cmake
Log Message:
-----------
[cmake] Resolve symlink when finding install prefix (#124743)
When determining the install prefix in LLVMConfig.cmake etc resolve
symlinks in CMAKE_CURRENT_LIST_FILE first. The motivation for this is to
support symlinks like `/usr/lib64/cmake/llvm` to
`/usr/lib64/llvm19/lib/cmake/llvm`. This only works correctly if the
paths are relative to the resolved symlink.
It's worth noting that this *mostly* already works out of the box,
because cmake automatically does the symlink resolution when the library
is found via CMAKE_PREFIX_PATH. It just doesn't happen when it's found
via the default prefix path.
Commit: 1bb8b656a9dcdae3863508b8f33bd713e953636d
https://github.com/llvm/llvm-project/commit/1bb8b656a9dcdae3863508b8f33bd713e953636d
Author: OverMighty <its.overmighty at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libc/src/__support/FPUtil/generic/CMakeLists.txt
M libc/src/__support/FPUtil/generic/add_sub.h
M libc/test/src/math/AddTest.h
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/SubTest.h
A libc/test/src/math/add_same_type_test.cpp
M libc/test/src/math/smoke/AddTest.h
M libc/test/src/math/smoke/CMakeLists.txt
M libc/test/src/math/smoke/SubTest.h
A libc/test/src/math/smoke/add_same_type_test.cpp
A libc/test/src/math/smoke/sub_same_type_test.cpp
A libc/test/src/math/sub_same_type_test.cpp
M libc/utils/MPFRWrapper/MPFRUtils.cpp
Log Message:
-----------
[libc][math] Fix incorrect logic in fputil::generic::add_or_sub (#116129)
Fixes incorrect logic that went unnoticed until the function was tested
with output and input types that have the same underlying floating-point
format.
Commit: 8f66fb784291c897a965a9ee4c280e314dc8cee4
https://github.com/llvm/llvm-project/commit/8f66fb784291c897a965a9ee4c280e314dc8cee4
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalMerge.h
M llvm/lib/CodeGen/GlobalMerge.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
A llvm/test/Transforms/GlobalMerge/constants.ll
Log Message:
-----------
[GlobalMerge] Fix handling of const options
For the NewPM, the merge-const option was assigned to an unused
option field. Assign it to the correct one. The merge-const-aggressive
option was not supported -- and invalid options were silently ignored.
Accept it and error on invalid options.
For the LegacyPM, the corresponding cl::opt options were ignored when
called via opt rather than llc.
Commit: ca87823438e312f4fc7f13bda6ced448e4216cf6
https://github.com/llvm/llvm-project/commit/ca87823438e312f4fc7f13bda6ced448e4216cf6
Author: Vy Nguyen <vyng at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M lldb/unittests/Core/TelemetryTest.cpp
Log Message:
-----------
[LLDB][NFC]Refactor common test setup into SetUp method (#131203)
Commit: d85a81b4e4cfc0fdc7c259d64f847e7bbeee56d2
https://github.com/llvm/llvm-project/commit/d85a81b4e4cfc0fdc7c259d64f847e7bbeee56d2
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/docs/ClangOffloadBundler.rst
M clang/include/clang/Driver/OffloadBundler.h
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/HIPUtility.cpp
M clang/test/Driver/clang-offload-bundler-asserts-on.c
M clang/test/Driver/clang-offload-bundler-standardize.c
M clang/test/Driver/clang-offload-bundler.c
M clang/test/Driver/hip-link-bc-to-bc.hip
M clang/test/Driver/hip-link-bundle-archive.hip
M clang/test/Driver/hip-offload-compress-zlib.hip
M clang/test/Driver/hip-offload-compress-zstd.hip
M clang/test/Driver/hip-rdc-device-only.hip
M clang/test/Driver/hip-toolchain-rdc-separate.hip
M clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
M llvm/utils/lit/lit/llvm/config.py
Log Message:
-----------
[OffloadBundler] Rework the ctor of `OffloadTargetInfo` to support AMDGPU's generic target (#122629)
The current parsing logic for the target string assumes it follows the
format `<kind>-<triple>-<target id>:<feature>`, such as
`hipv4-amdgcn-amd-amdhsa-gfx1030:+xnack`.
Specifically, it assumes that `<target id>` does not contain any `-`,
relying on `rsplit` for parsing.
However, this assumption breaks for AMDGPU's generic targets, which may
contain one or more `-`, such as `gfx10-3-generic` or `gfx12-generic`.
As a result, the existing approach using `rstrip` is no longer reliable.
This patch reworks the parsing logic to handle target strings more
robustly, including support for generic targets.
The bundler now strictly requires a 4-field target triple.
Additionally, a new Python helper function has been added to `config.py`
to normalize the target triple into the 4-field format when it is not,
ensuring tests pass reliably.
Commit: aab4ce4d5e480c440f3ec2506068164fafa9aa55
https://github.com/llvm/llvm-project/commit/aab4ce4d5e480c440f3ec2506068164fafa9aa55
Author: Tony Varghese <tonypalampalliyil at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
A llvm/test/CodeGen/PowerPC/shrink-wrap-frame-pointer.ll
Log Message:
-----------
[NFC][shrinkwrap] Add test point to capture the prologue and epilogue insertion by shrinkwrap pass for powerpc. (#131192)
This is NFC patch to capture the insertion of prologue and epilogue by
`shrinkwrap` pass for Powerpc target for functions that contain llvm
`__builtin_frame_address`.
---------
Co-authored-by: Tony Varghese <tony.varghese at ibm.com>
Commit: 034dd4c26f736a36aa87de69b8fd7b5460d3752a
https://github.com/llvm/llvm-project/commit/034dd4c26f736a36aa87de69b8fd7b5460d3752a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/ctlz-codesize.ll
R llvm/test/Analysis/CostModel/X86/ctlz-latency.ll
R llvm/test/Analysis/CostModel/X86/ctlz-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/ctlz.ll
Log Message:
-----------
[CostModel][X86] merge ctlz costs tests using -cost-kind=all (#131797)
Commit: 3ea89e0611b103e73c9d11028ebf24ffae61e248
https://github.com/llvm/llvm-project/commit/3ea89e0611b103e73c9d11028ebf24ffae61e248
Author: Joel Wee <joelwee at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
Fix Bazel after 1fbfef9
Commit: f6b1b91a3d1ac403c6f53c70e9871bd22f805a9f
https://github.com/llvm/llvm-project/commit/f6b1b91a3d1ac403c6f53c70e9871bd22f805a9f
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-uniform-store.ll
Log Message:
-----------
[LV][NFC] Regenerate CHECK lines in some tests (#131799)
Regenerates CHECK lines in tests that are affected by
PR #130565 to aid reviews.
Commit: f179daf77b180467edd1e0eb208b5b8988b28850
https://github.com/llvm/llvm-project/commit/f179daf77b180467edd1e0eb208b5b8988b28850
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
Log Message:
-----------
[mlir] Fix a warning
This patch fixes:
mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp:121:3:
error: default label in switch which covers all enumeration values
[-Werror,-Wcovered-switch-default]
Commit: 075324461d4179f85d2b94397b11b9dfb788e0f5
https://github.com/llvm/llvm-project/commit/075324461d4179f85d2b94397b11b9dfb788e0f5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/unittests/ADT/SmallPtrSetTest.cpp
Log Message:
-----------
[ADT] Use separate variables in a unit test for SmallPtrSet (NFC) (#131748)
Commit: 2c56383de5ef665b7380225e777e716ee7a9b1be
https://github.com/llvm/llvm-project/commit/2c56383de5ef665b7380225e777e716ee7a9b1be
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
Log Message:
-----------
[Hexagon] Avoid repeated hash lookups (NFC) (#131719)
Commit: 695a007310c7552f74488c5b498470708661e705
https://github.com/llvm/llvm-project/commit/695a007310c7552f74488c5b498470708661e705
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86PadShortFunction.cpp
Log Message:
-----------
[X86] Avoid repeated hash lookups (NFC) (#131725)
Commit: 127eb39a8ca9625c2ff078bcb05d2a53ee995423
https://github.com/llvm/llvm-project/commit/127eb39a8ca9625c2ff078bcb05d2a53ee995423
Author: Aleksandr Korepanov <alexander.korepanov at jetbrains.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/PDB/PDBTypes.h
M llvm/unittests/DebugInfo/PDB/CMakeLists.txt
A llvm/unittests/DebugInfo/PDB/PDBVariantTest.cpp
Log Message:
-----------
[LLVM][PDB] Use IsUnsigned flag for APInt correctly (#131598)
This patch fixes an assertion that occurs in `APInt`.
The assertion can be reproduced with LLDB test
`python_api/thread/TestThreadAPI.py` (it fails).
Commit: 02b4522358f29dbe13f628647f99b28a0307a56b
https://github.com/llvm/llvm-project/commit/02b4522358f29dbe13f628647f99b28a0307a56b
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/descriptor.h
Log Message:
-----------
[NFC][flang] Added deduction guide for StaticDescriptor class. (#131690)
I keep getting these warnings when building with clang-17:
`warning: 'StaticDescriptor' may not intend to support class template
argument deduction [-Wctad-maybe-unsupported]`
This change should help avoiding them.
Commit: e0bcf3aa0b641a9f72160491f68a34b7be14adc7
https://github.com/llvm/llvm-project/commit/e0bcf3aa0b641a9f72160491f68a34b7be14adc7
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/test/Fir/fir-ops.fir
Log Message:
-----------
[flang] Allow no type parameters for fir.pack_array. (#131662)
Arrays with assumed-length types are represented with a box
without explicit length parameters. This patch fixes the verification
to allow it for `fir.pack_array`.
Commit: 351bcd9fe229121fac58e051f9a83dce2d3066ae
https://github.com/llvm/llvm-project/commit/351bcd9fe229121fac58e051f9a83dce2d3066ae
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libcxx/include/__vector/vector_bool.h
Log Message:
-----------
[libc++][NFC] Add a comment that an include is a workaround
Commit: 64cf6f9721c48667c65aab91b94d1ba4c2452978
https://github.com/llvm/llvm-project/commit/64cf6f9721c48667c65aab91b94d1ba4c2452978
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/DebugInfo/PDB/BUILD.gn
Log Message:
-----------
[gn build] Port 127eb39a8ca9
Commit: ea107d5c63e09347b01b250a6211974d7ed57efe
https://github.com/llvm/llvm-project/commit/ea107d5c63e09347b01b250a6211974d7ed57efe
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/include/clang/Analysis/ProgramPoint.h
M clang/include/clang/StaticAnalyzer/Core/Checker.h
M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
M clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp
M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
M clang/unittests/StaticAnalyzer/AnalyzerOptionsTest.cpp
Log Message:
-----------
[NFC][analyzer] Use `CheckerBase::getName` in checker option handling (#131612)
The virtual method `ProgramPointTag::getTagDescription` had two very
distinct use cases:
- It is printed in the DOT graph visualization of the exploded graph
(that is, a debug printout).
- The checker option handling code used it to query the name of a
checker, which relied on the coincidence that in `CheckerBase` this
method is defined to be equivalent with `getName()`.
This commit switches to using `getName` in the second use case, because
this way we will be able to properly support checkers that have multiple
(separately named) parts.
The method `reportInvalidCheckerOptionName` is extended with an
additional overload that allows specifying the `CheckerPartIdx`. The
methods `getChecker*Option` could be extended analogously in the future,
but they are just convenience wrappers around the variants that directly
take `StringRef CheckerName`, so I'll only do this extension if it's
needed.
Commit: c33ef4f2d42bce2f41bff9844dfaa785a3a74b68
https://github.com/llvm/llvm-project/commit/c33ef4f2d42bce2f41bff9844dfaa785a3a74b68
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
Log Message:
-----------
[RISCV] Reorder RISCVInstrInfoXCV.td to separate Operands, SDNodeXForms, formats, and instructions into separate sections. NFC (#131411)
This is more consistent with some of our other InstrInfo.td file.
Commit: 05dbabe329441541ae4896c8bf5c85f8446ba4ba
https://github.com/llvm/llvm-project/commit/05dbabe329441541ae4896c8bf5c85f8446ba4ba
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/ctpop-codesize.ll
R llvm/test/Analysis/CostModel/X86/ctpop-latency.ll
R llvm/test/Analysis/CostModel/X86/ctpop-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/ctpop.ll
Log Message:
-----------
[CostModel][X86] merge ctpop costs tests using -cost-kind=all (#131802)
Commit: 6ada38b248ef80a224fd2f48841b22ae3bbf5a7b
https://github.com/llvm/llvm-project/commit/6ada38b248ef80a224fd2f48841b22ae3bbf5a7b
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rv32zbb-zbkb.ll
M llvm/test/CodeGen/RISCV/rv64zbb-zbkb.ll
M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
Log Message:
-----------
[RISCV][test] Add tests for sinking NOT to be fold into ANDN/ORN/XNOR/VANDN
Commit: 2175c6cb38e7bb7701219a5081f22e7877ab0380
https://github.com/llvm/llvm-project/commit/2175c6cb38e7bb7701219a5081f22e7877ab0380
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
M llvm/test/CodeGen/RISCV/redundant-copy-from-tail-duplicate.ll
M llvm/test/CodeGen/RISCV/rvv/active_lane_mask.ll
M llvm/test/CodeGen/RISCV/rvv/combine-store-extract-crash.ll
M llvm/test/CodeGen/RISCV/rvv/common-shuffle-patterns.ll
M llvm/test/CodeGen/RISCV/rvv/compressstore.ll
M llvm/test/CodeGen/RISCV/rvv/ctlz-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/ctlz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/cttz-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/cttz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/expandload.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-conv.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-setcc.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-shuffles.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp2i-sat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp2i.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fpext-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptosi-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptoui-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-i2fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-exttrunc.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-inttoptr-ptrtoint.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sad.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-scalarized.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sext-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-changes-length.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-rotate.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shufflevector-vnsrl.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sitofp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-uitofp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-unaligned.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmax.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmin.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfpext-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfptoi-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmacc.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vitofp-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpgather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vrol.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vror.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd-mask.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwaddu.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsll.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsub-mask.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zext-vp.ll
M llvm/test/CodeGen/RISCV/rvv/float-round-conv.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fptosi-sat.ll
M llvm/test/CodeGen/RISCV/rvv/fptoui-sat.ll
M llvm/test/CodeGen/RISCV/rvv/half-round-conv.ll
M llvm/test/CodeGen/RISCV/rvv/interleave-crash.ll
M llvm/test/CodeGen/RISCV/rvv/intrinsic-vector-match.ll
M llvm/test/CodeGen/RISCV/rvv/llrint-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/llrint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/lrint-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/lrint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/named-vector-shuffle-reverse.ll
M llvm/test/CodeGen/RISCV/rvv/narrow-shift-extend.ll
M llvm/test/CodeGen/RISCV/rvv/pr61561.ll
M llvm/test/CodeGen/RISCV/rvv/pr95865.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll
M llvm/test/CodeGen/RISCV/rvv/vcpop-shl-zext-opt.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-load.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/vexts-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfadd-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfcopysign-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfdiv-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmsub-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfmul-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmuladd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfnmadd-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfnmsub-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfpext-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfpext-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfpext-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoi-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoi-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsub-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfwadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfwadd.ll
M llvm/test/CodeGen/RISCV/rvv/vfwadd.w.ll
M llvm/test/CodeGen/RISCV/rvv/vfwcvt-f-f.ll
M llvm/test/CodeGen/RISCV/rvv/vfwcvt-f-x.ll
M llvm/test/CodeGen/RISCV/rvv/vfwcvt-f-xu.ll
M llvm/test/CodeGen/RISCV/rvv/vfwcvt-rtz-x-f.ll
M llvm/test/CodeGen/RISCV/rvv/vfwcvt-rtz-xu-f.ll
M llvm/test/CodeGen/RISCV/rvv/vfwcvt-x-f.ll
M llvm/test/CodeGen/RISCV/rvv/vfwcvt-xu-f.ll
M llvm/test/CodeGen/RISCV/rvv/vfwcvtbf16-f-f.ll
M llvm/test/CodeGen/RISCV/rvv/vfwmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfwmsac-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfwmul-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfwmul.ll
M llvm/test/CodeGen/RISCV/rvv/vfwnmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfwnmsac-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfwsub-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfwsub.ll
M llvm/test/CodeGen/RISCV/rvv/vfwsub.w.ll
M llvm/test/CodeGen/RISCV/rvv/vitofp-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vitofp-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
M llvm/test/CodeGen/RISCV/rvv/vloxei.ll
M llvm/test/CodeGen/RISCV/rvv/vloxseg-rv32.ll
M llvm/test/CodeGen/RISCV/rvv/vloxseg-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vluxei.ll
M llvm/test/CodeGen/RISCV/rvv/vluxseg-rv32.ll
M llvm/test/CodeGen/RISCV/rvv/vluxseg-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vp-inttoptr-ptrtoint.ll
M llvm/test/CodeGen/RISCV/rvv/vp-vector-interleaved-access.ll
M llvm/test/CodeGen/RISCV/rvv/vpgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vrol-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vror-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vscale-vw-web-simplification.ll
M llvm/test/CodeGen/RISCV/rvv/vsext-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsext.ll
M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vwadd-mask-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vwadd.ll
M llvm/test/CodeGen/RISCV/rvv/vwadd.w.ll
M llvm/test/CodeGen/RISCV/rvv/vwaddu.ll
M llvm/test/CodeGen/RISCV/rvv/vwaddu.w.ll
M llvm/test/CodeGen/RISCV/rvv/vwmul-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vwmul.ll
M llvm/test/CodeGen/RISCV/rvv/vwmulsu.ll
M llvm/test/CodeGen/RISCV/rvv/vwmulu.ll
M llvm/test/CodeGen/RISCV/rvv/vwsll-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vwsll-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vwsll.ll
M llvm/test/CodeGen/RISCV/rvv/vwsub-mask-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vwsub-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vwsub.ll
M llvm/test/CodeGen/RISCV/rvv/vwsub.w.ll
M llvm/test/CodeGen/RISCV/rvv/vwsubu.ll
M llvm/test/CodeGen/RISCV/rvv/vwsubu.w.ll
M llvm/test/CodeGen/RISCV/rvv/vzext-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vzext.ll
M llvm/test/CodeGen/RISCV/rvv/zvbb-demanded-bits.ll
M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
Log Message:
-----------
[RISCV] Set AllocationPriority in line with LMUL (#131176)
This mechanism causes the greedy register allocator to prefer allocating
register classes with higher priority first. This helps to ensure that
high LMUL registers obtain a register without having to go through the
eviction mechanism. In practice, it seems to cause a bunch of code
churn, and some minor improvement around widening and narrowing
operations.
In a few of the widening tests, we have what look like code size
regressions because we end up with two smaller register class copies
instead of one larger one after the instruction. However, in any larger
code sequence, these are likely to be folded into the producing
instructions. (But so were the wider copies after the operation.)
Two observations:
1) We're not setting the greedy-regclass-priority-trumps-globalness flag
on the register class, so this doesn't help long mask ranges. I
thought about doing that, but the benefit is non-obvious, so I
decided it was worth a separate change at minimum.
2) We could arguably set the priority higher for the register classes
that exclude v0. I tried that, and it caused a whole bunch of
further churn. I may return to it in a separate patch.
Commit: df544b73e4206b4fd683d2c37012b4f78e8084ac
https://github.com/llvm/llvm-project/commit/df544b73e4206b4fd683d2c37012b4f78e8084ac
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/vshift-ashr-codesize.ll
M llvm/test/Analysis/CostModel/X86/vshift-ashr-cost-inseltpoison.ll
M llvm/test/Analysis/CostModel/X86/vshift-ashr-cost.ll
R llvm/test/Analysis/CostModel/X86/vshift-ashr-latency.ll
R llvm/test/Analysis/CostModel/X86/vshift-ashr-sizelatency.ll
R llvm/test/Analysis/CostModel/X86/vshift-lshr-codesize.ll
M llvm/test/Analysis/CostModel/X86/vshift-lshr-cost-inseltpoison.ll
M llvm/test/Analysis/CostModel/X86/vshift-lshr-cost.ll
R llvm/test/Analysis/CostModel/X86/vshift-lshr-latency.ll
R llvm/test/Analysis/CostModel/X86/vshift-lshr-sizelatency.ll
R llvm/test/Analysis/CostModel/X86/vshift-shl-codesize.ll
M llvm/test/Analysis/CostModel/X86/vshift-shl-cost-inseltpoison.ll
M llvm/test/Analysis/CostModel/X86/vshift-shl-cost.ll
R llvm/test/Analysis/CostModel/X86/vshift-shl-latency.ll
R llvm/test/Analysis/CostModel/X86/vshift-shl-sizelatency.ll
Log Message:
-----------
[CostModel][X86] merge vector shifts costs tests using -cost-kind=all (#131806)
Commit: e8f79eb8980094d62a85c4a6da95e0de36c505a8
https://github.com/llvm/llvm-project/commit/e8f79eb8980094d62a85c4a6da95e0de36c505a8
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/cttz-codesize.ll
R llvm/test/Analysis/CostModel/X86/cttz-latency.ll
R llvm/test/Analysis/CostModel/X86/cttz-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/cttz.ll
Log Message:
-----------
[CostModel][X86] merge cttz costs tests using -cost-kind=all (#131810)
Commit: e4d910e80dc294ac3416ee0e2dfbef914d559b90
https://github.com/llvm/llvm-project/commit/e4d910e80dc294ac3416ee0e2dfbef914d559b90
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaCXX/cxx2c-enum-compare.cpp
Log Message:
-----------
[Clang] Demote mixed enumeration arithmetic error to a warning (#131811)
In C++, defaulted to an error.
C++ removed these features but the removal negatively impacts users.
Fixes #92340
Commit: 4f7dc99a8a3e34e925ef66e7069b01b811e837ba
https://github.com/llvm/llvm-project/commit/4f7dc99a8a3e34e925ef66e7069b01b811e837ba
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
Log Message:
-----------
[RISCV] Use MnemonicAlias instead of InstAlias for some vector instructions. NFC (#131732)
To make this work we have to apply mnemonic aliases before looking up
custom operand parsing.
Commit: 467e5a1d41d63fd1c80fee14a8d99d32515c26d6
https://github.com/llvm/llvm-project/commit/467e5a1d41d63fd1c80fee14a8d99d32515c26d6
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.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/RISCVInstrInfoXqci.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
A llvm/test/MC/RISCV/xqcisim-invalid.s
A llvm/test/MC/RISCV/xqcisim-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add Qualcomm uC Xqcisim (Simulation Hint) extension (#128833)
This extension adds 10 instructions that provide hints to the interface
simulation environment.
The current spec can be found at:
https://github.com/quic/riscv-unified-db/releases/
This patch adds assembler only support.
Commit: b391e80f52f4248e4e2b766c25f83d5e62ef2d56
https://github.com/llvm/llvm-project/commit/b391e80f52f4248e4e2b766c25f83d5e62ef2d56
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libcxx/include/bitset
Log Message:
-----------
[libc++] Remove redundant assignments in bitset string-like constructors (#121424)
The following three string-like constructors for `std::bitset`
- `bitset(const CharT* str, std::size_t n, CharT zero, CharT one)`;
- `bitset(const std::basic_string<CharT, Traits, Alloc>& str, typename
std::basic_string<CharT, Traits, Alloc>::size_type pos, CharT zero,
CharT one)`;
- `bitset(std::basic_string_view<CharT, Traits> str, std::size_t pos,
std::size_t n, CharT zero, CharT one)`
already initialize the underlying storage array to all zeroes via
default-constructor of the base class `__bitset`. Therefore,
re-assigning the storage array to zeroes via `std::fill_n` in the
string-like constructors is truly redundant.
Commit: a4dc02c0e75f1880c2ce1641212830c2b8616aad
https://github.com/llvm/llvm-project/commit/a4dc02c0e75f1880c2ce1641212830c2b8616aad
Author: Luke Lau <luke at igalia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VPlanValue.h
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
Log Message:
-----------
[VPlan] Rename VPReverseVectorPointerRecipe to VPVectorEndPointerRecipe. NFC (#131086)
After #128718 lands there will be two ways of performing a reversed
widened memory access, either by performing a consecutive unit-stride
access and a reverse, or a strided access with a negative stride.
Even though both produce a reversed vector, only the former needs
VPReverseVectorPointerRecipe which computes a pointer to the last
element of each part. A strided reverse still needs a pointer to the
first element of each part so it will use VPVectorPointerRecipe.
This renames VPReverseVectorPointerRecipe to VPVectorEndPointerRecipe to
clarify that a reversed access may not necessarily need a pointer to the
last element.
Commit: 3d083777efd1649d156a8e6da77022f801cc70f5
https://github.com/llvm/llvm-project/commit/3d083777efd1649d156a8e6da77022f801cc70f5
Author: OverMighty <its.overmighty at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libc/utils/MPFRWrapper/MPFRUtils.cpp
Log Message:
-----------
[libc] Fix compile error in MPFRWrapper when float128 is long double (#131821)
See https://lab.llvm.org/buildbot/#/builders/104/builds/18422.
Commit: 70357a21373c73fa137c7dff9c6030af75301b21
https://github.com/llvm/llvm-project/commit/70357a21373c73fa137c7dff9c6030af75301b21
Author: Christian von Elm <christian.von_elm at tu-dresden.de>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
Log Message:
-----------
[OpenMP] [OMPD] gdb plugin: remove 'imp' import (#112331)
The 'imp' library was removed in Python 3.12.
As the code never uses the imp library, the import is simply removed.
Commit: 33e5d013b7f7a6ae136a058f842b30c87623ecfb
https://github.com/llvm/llvm-project/commit/33e5d013b7f7a6ae136a058f842b30c87623ecfb
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/shuffle-broadcast-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-broadcast-fp16-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-broadcast-fp16-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-broadcast-fp16-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-broadcast-fp16.ll
R llvm/test/Analysis/CostModel/X86/shuffle-broadcast-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-broadcast-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-broadcast.ll
R llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector.ll
R llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector.ll
R llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector.ll
R llvm/test/Analysis/CostModel/X86/shuffle-load-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-load-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-load-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-load.ll
R llvm/test/Analysis/CostModel/X86/shuffle-non-pow-2-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-non-pow-2-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-non-pow-2-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-non-pow-2.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i1-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i1-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i1-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-replication-i1.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i16-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i16-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i16-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-replication-i16.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i32-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i32-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i32-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-replication-i32.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i64-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i64-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i64-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-replication-i64.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i8-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i8-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-replication-i8-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-replication-i8.ll
R llvm/test/Analysis/CostModel/X86/shuffle-reverse-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-reverse-fp16-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-reverse-fp16-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-reverse-fp16-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-reverse-fp16.ll
R llvm/test/Analysis/CostModel/X86/shuffle-reverse-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-reverse-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-reverse.ll
R llvm/test/Analysis/CostModel/X86/shuffle-select-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-select-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-select-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-select.ll
R llvm/test/Analysis/CostModel/X86/shuffle-single-src-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-single-src-fp16-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-single-src-fp16-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-single-src-fp16-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-single-src-fp16.ll
R llvm/test/Analysis/CostModel/X86/shuffle-single-src-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-single-src-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-single-src.ll
R llvm/test/Analysis/CostModel/X86/shuffle-splat-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-splat-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-splat-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-splat.ll
R llvm/test/Analysis/CostModel/X86/shuffle-splice-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-splice-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-splice-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-splice.ll
R llvm/test/Analysis/CostModel/X86/shuffle-transpose-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-transpose-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-transpose-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-transpose.ll
R llvm/test/Analysis/CostModel/X86/shuffle-two-src-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-two-src-fp16-codesize.ll
R llvm/test/Analysis/CostModel/X86/shuffle-two-src-fp16-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-two-src-fp16-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src-fp16.ll
R llvm/test/Analysis/CostModel/X86/shuffle-two-src-latency.ll
R llvm/test/Analysis/CostModel/X86/shuffle-two-src-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-two-src.ll
Log Message:
-----------
[CostModel][X86] merge vector shuffle costs tests using -cost-kind=all (#131819)
Commit: 6542cf1973208a83b2f883f2143464c4fdbac9eb
https://github.com/llvm/llvm-project/commit/6542cf1973208a83b2f883f2143464c4fdbac9eb
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
M lldb/unittests/Platform/CMakeLists.txt
A lldb/unittests/Platform/gdb-server/CMakeLists.txt
A lldb/unittests/Platform/gdb-server/PlatformRemoteGDBServerTest.cpp
Log Message:
-----------
[lldb/platform-gdb] Do not assume a persistent connection (#131736)
After https://reviews.llvm.org/D116539, when `m_gdb_client_up` in
`PlatformRemoteGDBServer` is not null, the connection to a server is
expected to exist. However,
`PlatformRemoteGDBServer::DisconnectRemote()` is not the only way to
close the connection;
`GDBRemoteCommunication::WaitForPacketNoLock()` can disconnect if the
server stops responding, and in this case `m_gdb_client_up` is not
cleared. The patch removes this assumption and checks the connection
status directly.
Commit: dea5aa73fa1984eddde14308803bdfca56f2bc14
https://github.com/llvm/llvm-project/commit/dea5aa73fa1984eddde14308803bdfca56f2bc14
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
M llvm/test/CodeGen/AMDGPU/atomicrmw-expand.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll
M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-phi-regression-issue130646-issue130119.ll
A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-phi-regression-issue130646.mir
M llvm/test/CodeGen/AMDGPU/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/frem.ll
M llvm/test/CodeGen/AMDGPU/ftrunc.f64.ll
M llvm/test/CodeGen/AMDGPU/i1-to-bf16.ll
M llvm/test/CodeGen/AMDGPU/idiv-licm.ll
M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
M llvm/test/CodeGen/AMDGPU/llvm.mulo.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
M llvm/test/CodeGen/AMDGPU/multilevel-break.ll
M llvm/test/CodeGen/AMDGPU/opt-sgpr-to-vgpr-copy.mir
M llvm/test/CodeGen/AMDGPU/scalar_to_vector.ll
M llvm/test/CodeGen/AMDGPU/sdiv.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/sdwa-peephole.ll
M llvm/test/CodeGen/AMDGPU/sminmax.v2i16.ll
M llvm/test/CodeGen/AMDGPU/sra.ll
M llvm/test/CodeGen/AMDGPU/srem.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
M llvm/test/CodeGen/AMDGPU/udiv.ll
M llvm/test/CodeGen/AMDGPU/udiv64.ll
M llvm/test/CodeGen/AMDGPU/udivrem.ll
M llvm/test/CodeGen/AMDGPU/urem64.ll
M llvm/test/CodeGen/AMDGPU/wave32.ll
Log Message:
-----------
AMDGPU: Move insertion into V2SCopies map (#130776)
Insert the start instruction directly into the map before the uses. This
prevents improperly re-visting sgpr->vgpr phi inputs multiple times
which
would trigger a use after free.
I don't particularly trust the iteration scheme here. This is also
unnecessarily revisting transitive users of a phi or reg_sequence for
every
input operand, but I will address that separately.
Fixes #130646. I also believe it fixes #130119, although that test fails
less consistently for me.
Commit: 27d8bd3dcab9819e1d28270be634f62bbec925cb
https://github.com/llvm/llvm-project/commit/27d8bd3dcab9819e1d28270be634f62bbec925cb
Author: Morris Hafner <mmha at users.noreply.github.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
A clang/test/CIR/CodeGen/cast.cpp
A clang/test/CIR/IR/cast.cir
A clang/test/CIR/Lowering/cast.cir
Log Message:
-----------
[CIR] Upstream CastOp and scalar conversions (#130690)
This patch upstreams ClangIR's CastOp with the following exceptions:
- No Fixed/FP conversions
- No casts between value categories
- No complex casts
- No array_to_ptrdecay
- No address_space
- No casts involving record types (member pointers, base/derived casts)
- No casts specific to ObjC or OpenCL
---------
Co-authored-by: Morris Hafner <mhafner at nvidia.com>
Co-authored-by: Erich Keane <ekeane at nvidia.com>
Commit: 93df3e81665427e4eb3f1be60848d6d27a311897
https://github.com/llvm/llvm-project/commit/93df3e81665427e4eb3f1be60848d6d27a311897
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
A llvm/test/Analysis/BasicAA/call.ll
Log Message:
-----------
[BasicAA] Add additional test for call AA (NFC)
Commit: 7b3455e24ab5aa090e5b2b9ce50c249843c45754
https://github.com/llvm/llvm-project/commit/7b3455e24ab5aa090e5b2b9ce50c249843c45754
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M lldb/source/API/SBCommandInterpreter.cpp
M lldb/unittests/API/SBCommandInterpreterTest.cpp
Log Message:
-----------
[lldb] Fix double free in CommandPluginInterfaceImplementation (#131658)
The class was taking ownership of the SBCommandPluginInterface pointer
it was passed in, by wrapping it in a shared pointer. This causes a
double free in the unit test when the object is destroyed and the same
pointer gets freed once when the SBCommandPluginInterface goes away and
then again when the shared pointer hits a zero refcount.
Commit: 1ae307a709f81e57356cd135f6a30c3c6174cd70
https://github.com/llvm/llvm-project/commit/1ae307a709f81e57356cd135f6a30c3c6174cd70
Author: Morris Hafner <mmha at users.noreply.github.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
A clang/test/CIR/Tools/cir-translate-triple.cir
A clang/test/CIR/Tools/has-triple-and-data-layout.cir
A clang/test/CIR/Tools/has-triple-no-data-layout.cir
A clang/test/CIR/Tools/invalid-translate-triple.cir
A clang/test/CIR/Tools/no-triple-has-data-layout.cir
A clang/test/CIR/Tools/no-triple-no-data-layout.cir
A clang/test/CIR/Tools/warn-default-triple.cir
M clang/tools/CMakeLists.txt
A clang/tools/cir-lsp-server/CMakeLists.txt
A clang/tools/cir-lsp-server/cir-lsp-server.cpp
A clang/tools/cir-translate/CMakeLists.txt
A clang/tools/cir-translate/cir-translate.cpp
Log Message:
-----------
[CIR] Add cir-translate and cir-lsp-server tools (#131181)
Adds two new clang tools to the tree.
* cir-translate: Translates CIR to LLVM, similar to mlir-translate
* cir-lsp-server: Implementation of the Language Server Protocol for
ClangIR, similar to fir-lsp-server
---------
Co-authored-by: Morris Hafner <mhafner at nvidia.com>
Commit: 24fbf9dd428dc0a571ccd28e730f0411ef6c5ff8
https://github.com/llvm/llvm-project/commit/24fbf9dd428dc0a571ccd28e730f0411ef6c5ff8
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/arith-ssat-codesize.ll
R llvm/test/Analysis/CostModel/X86/arith-ssat-latency.ll
R llvm/test/Analysis/CostModel/X86/arith-ssat-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/arith-ssat.ll
R llvm/test/Analysis/CostModel/X86/arith-usat-codesize.ll
R llvm/test/Analysis/CostModel/X86/arith-usat-latency.ll
R llvm/test/Analysis/CostModel/X86/arith-usat-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/arith-usat.ll
Log Message:
-----------
[CostModel][X86] merge saturated arithmetic costs tests using -cost-kind=all (#131828)
Commit: d43b4ede6649e4ecf650a4660f62840e95043898
https://github.com/llvm/llvm-project/commit/d43b4ede6649e4ecf650a4660f62840e95043898
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/reduce-linkage-intrinsic-global-variables.ll
M llvm/tools/llvm-reduce/deltas/ReduceGlobalValues.cpp
Log Message:
-----------
llvm-reduce: Do not remove appending linkage from intrinsic globals (#131713)
Commit: 6d38dbf6eb56fd2b3399565af455de96a99ffa0f
https://github.com/llvm/llvm-project/commit/6d38dbf6eb56fd2b3399565af455de96a99ffa0f
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueWatchpoints.py
Log Message:
-----------
[lldb] Skip reverse continue tests on macos<15.0
They're failing for unknown reasons.
Commit: 84909d797782a0dcf240f79a8e5e863d8165c03f
https://github.com/llvm/llvm-project/commit/84909d797782a0dcf240f79a8e5e863d8165c03f
Author: Julian Brown <julian.brown at amd.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
A llvm/test/CodeGen/AMDGPU/sema-v-unsched-bundle.ll
Log Message:
-----------
[AMDGCN] Allow unscheduling of bundled insns
This is a patch arising from AMD's fuzzing project.
In the test case, the scheduling algorithm decides to undo an attempted
schedule, but is unprepared to handle bundled instructions at that
point -- and those can arise via the expansion of intrinsics earlier
in compilation. The fix is to use the splice method instead of
remove/insert, since that can handle bundles properly.
Commit: 45090b3059562b32723cd25679db75d1574ab04e
https://github.com/llvm/llvm-project/commit/45090b3059562b32723cd25679db75d1574ab04e
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/same-last-instruction-different-parents.ll
Log Message:
-----------
[SLP]Check the whole def-use chain in the tree to find proper dominance, if the last instruction is the same
If the insertion point (last instruction) of the user nodes is the same,
need to check the whole def-use chain in the tree to find proper
dominance to prevent a compiler crash.
Fixes #131818
Commit: 6c7c660afe0ccddcd1bac0c153280d105d04590f
https://github.com/llvm/llvm-project/commit/6c7c660afe0ccddcd1bac0c153280d105d04590f
Author: Kelvin Li <kkwli at users.noreply.github.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M flang/lib/Lower/OpenMP/Clauses.cpp
Log Message:
-----------
[flang] Use C-style casts to silence message (NFC) (#131796)
Commit: b271b44158804256a982fe8b2c5edbdba3a0bf15
https://github.com/llvm/llvm-project/commit/b271b44158804256a982fe8b2c5edbdba3a0bf15
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libcxx/include/__mutex/once_flag.h
M libcxx/test/std/thread/thread.mutex/thread.once/thread.once.callonce/call_once.pass.cpp
M libcxx/test/support/operator_hijacker.h
Log Message:
-----------
[libc++] Guard call_once against operator hijacking. (#128054)
Commit: 76a9d792d93990bb24a6e2e17a204000f3a0d572
https://github.com/llvm/llvm-project/commit/76a9d792d93990bb24a6e2e17a204000f3a0d572
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libcxx/include/__functional/function.h
M libcxx/include/__numeric/gcd_lcm.h
M libcxx/include/__numeric/saturation_arithmetic.h
M libcxx/include/locale
Log Message:
-----------
[NFC][libc++] Guard against operator& hijacking. (#129453)
Commit: 168177a0bd009269bec4d752b8096c63c492af76
https://github.com/llvm/llvm-project/commit/168177a0bd009269bec4d752b8096c63c492af76
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/arith-sminmax-codesize.ll
R llvm/test/Analysis/CostModel/X86/arith-sminmax-latency.ll
R llvm/test/Analysis/CostModel/X86/arith-sminmax-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/arith-sminmax.ll
R llvm/test/Analysis/CostModel/X86/arith-uminmax-codesize.ll
R llvm/test/Analysis/CostModel/X86/arith-uminmax-latency.ll
R llvm/test/Analysis/CostModel/X86/arith-uminmax-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/arith-uminmax.ll
Log Message:
-----------
[CostModel][X86] merge arithmetic integer min/max costs tests using -cost-kind=all (#131834)
Commit: 04ab8a5fba71f7ec65634cc118dc13798a9037fc
https://github.com/llvm/llvm-project/commit/04ab8a5fba71f7ec65634cc118dc13798a9037fc
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libc/src/stdio/scanf_core/vfscanf_internal.h
Log Message:
-----------
[libc] Fix the GPU build after scanf rework
Summary:
Needs these to be included.
Commit: 1a9521565019edc8589f234c95477ab0a6b164d5
https://github.com/llvm/llvm-project/commit/1a9521565019edc8589f234c95477ab0a6b164d5
Author: Deric C. <cheung.deric at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
M llvm/test/CodeGen/DirectX/ShaderFlags/double-extensions.ll
A llvm/test/CodeGen/DirectX/ShaderFlags/int64ops.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/propagate-function-flags-test.ll
Log Message:
-----------
[DirectX] Set function-level flag Int64Ops in DXIL Shader Flags Analysis (#129089)
Fixes #114562
Commit: d3bcbd6b32bfee6e924397e704fcf2a94659af6b
https://github.com/llvm/llvm-project/commit/d3bcbd6b32bfee6e924397e704fcf2a94659af6b
Author: john-stuart2 <john.stuart.science at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/docs/GlobalISel/GenericOpcode.rst
Log Message:
-----------
[Docs] Fix concat vectors (#131860)
GenericOpcodes.td states that the number of operands are variadic.
let InOperandList = (ins type1:$src0, variable_ops);
X86 supports up to 4 inputs. The example uses 512-bit aka AVX-512 to
make it look real and show the effect of the ~many operands.
Test plan: ninja docs-llvm-html
Commit: 40c6f8984126407569b9b86f11050046950a4b3e
https://github.com/llvm/llvm-project/commit/40c6f8984126407569b9b86f11050046950a4b3e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/arith-fp-codesize.ll
R llvm/test/Analysis/CostModel/X86/arith-fp-latency.ll
R llvm/test/Analysis/CostModel/X86/arith-fp-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/arith-fp.ll
Log Message:
-----------
[CostModel][X86] merge fp arithmetic costs tests using -cost-kind=all (#131839)
Commit: a5a9b2b92ff02d9b95e43af9f4fcf4c3823333b2
https://github.com/llvm/llvm-project/commit/a5a9b2b92ff02d9b95e43af9f4fcf4c3823333b2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/arith-int-codesize.ll
R llvm/test/Analysis/CostModel/X86/arith-int-latency.ll
R llvm/test/Analysis/CostModel/X86/arith-int-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/arith-int.ll
Log Message:
-----------
[CostModel][X86] merge integer arithmetic costs tests using -cost-kind=all (#131840)
Commit: 9feac2cbd0d80927ce9a8b4c3e810d2b81802d55
https://github.com/llvm/llvm-project/commit/9feac2cbd0d80927ce9a8b4c3e810d2b81802d55
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libcxx/include/__functional/binary_function.h
M libcxx/include/__functional/unary_function.h
M libcxx/include/__functional/weak_result_type.h
M libcxx/include/__memory/allocator_traits.h
M libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/types.pass.cpp
Log Message:
-----------
[libc++] Improve deprecated diagnostic guards.
Recent Clang-21 builds improved the deprecated diagnotics. This
uncovered missing guards in libc++ internally.
Note: This patch should be a separate commit and not merged.
For testing purposes they are combined.
Reviewed as part of #130497.
Commit: dbc7665b24eca1568902808bfb05db4b752cad19
https://github.com/llvm/llvm-project/commit/dbc7665b24eca1568902808bfb05db4b752cad19
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrMMA.td
M llvm/lib/Target/PowerPC/PPCInstrP10.td
M llvm/test/CodeGen/PowerPC/bfloat16-outer-product.ll
M llvm/test/CodeGen/PowerPC/dmf-outer-product.ll
M llvm/test/CodeGen/PowerPC/mma-acc-copy-hints.ll
M llvm/test/CodeGen/PowerPC/mma-acc-memops.ll
M llvm/test/CodeGen/PowerPC/mma-acc-spill.ll
M llvm/test/CodeGen/PowerPC/mma-integer-based-outer-product.ll
M llvm/test/CodeGen/PowerPC/mma-intrinsics.ll
M llvm/test/CodeGen/PowerPC/mma-outer-product.ll
M llvm/test/CodeGen/PowerPC/mmaplus-intrinsics.ll
M llvm/test/CodeGen/PowerPC/paired-vector-intrinsics.ll
M llvm/test/CodeGen/PowerPC/ppc64-acc-regalloc-bugfix.ll
M llvm/test/CodeGen/PowerPC/ppc64-acc-regalloc.ll
Log Message:
-----------
PowerPC: Use REG_SEQUENCE instead of INSERT_SUBREG (#129941)
Update to use REG_SEQUENCE when possible.
This patch only update td pattern to utilize REG_SEQUENCE for
INSERT_SUBREG for cases where it does not produce
a nesting of REG_SEQUENCE. This seem to show some improvement in code
gen for `llvm/test/CodeGen/PowerPC/mmaplus-intrinsics.ll`.
Fixes part of https://github.com/llvm/llvm-project/issues/125502
Commit: b326cb6792b3951881d63d5a02ea163921da18d9
https://github.com/llvm/llvm-project/commit/b326cb6792b3951881d63d5a02ea163921da18d9
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/select-icmp-and.ll
Log Message:
-----------
[InstCombine] Support trunc to i1 in foldSelectICmpAnd (#127905)
proof: https://alive2.llvm.org/ce/z/Ey6BoT
Commit: 19970535f92c0f2dcda01b7fc60f95945166e424
https://github.com/llvm/llvm-project/commit/19970535f92c0f2dcda01b7fc60f95945166e424
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
Log Message:
-----------
[PowerPC] Avoid repeated hash lookups (NFC) (#131724)
Co-authored-by: Nikita Popov <github at npopov.com>
Commit: e6c3d94915f55cf01b0a29266f0ea9881b4676f7
https://github.com/llvm/llvm-project/commit/e6c3d94915f55cf01b0a29266f0ea9881b4676f7
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/test/Transforms/InstCombine/select-with-bitwise-ops.ll
Log Message:
-----------
[InstCombine] Add test for foldSelectICmpAndBinOp with range attribute. (NFC)
Commit: 8cc9a485792240314ad723dcf6661490850d2c98
https://github.com/llvm/llvm-project/commit/8cc9a485792240314ad723dcf6661490850d2c98
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/Sema/aarch64-sve-vector-exp-ops.c
M clang/test/Sema/aarch64-sve-vector-log-ops.c
M clang/test/Sema/aarch64-sve-vector-pow-ops.c
M clang/test/Sema/aarch64-sve-vector-trig-ops.c
M clang/test/Sema/builtins-elementwise-math.c
M clang/test/Sema/builtins-reduction-math.c
M clang/test/Sema/count-builtins.c
M clang/test/Sema/riscv-rvv-vector-exp-ops.c
M clang/test/Sema/riscv-rvv-vector-log-ops.c
M clang/test/Sema/riscv-rvv-vector-trig-ops.c
M clang/test/Sema/riscv-sve-vector-pow-ops.c
M clang/test/SemaHLSL/BuiltIns/clamp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/exp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/firstbithigh-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/firstbitlow-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/mad-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/reversebits-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/round-errors.hlsl
Log Message:
-----------
[clang] Improve diagnostics for vector builtins (#125673)
This commit improves the diagnostics for vector (elementwise) builtins
in a couple of ways.
It primarily provides more precise type-checking diagnostics for
builtins with specific type requirements. Previously many builtins were
receiving a catch-all diagnostic suggesting types which aren't valid.
It also makes consistent the type-checking behaviour between various
binary and ternary builtins. The binary builtins would check for
mismatched argument types before specific type requirements, whereas
ternary builtins would perform the checks in the reverse order. The
binary builtins now behave as the ternary ones do.
Commit: 14c95e0c8b25f6deba47cd279c5dcdeef3870159
https://github.com/llvm/llvm-project/commit/14c95e0c8b25f6deba47cd279c5dcdeef3870159
Author: Wael Yehia <wmyehia2001 at yahoo.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/profile/InstrProfilingPort.h
M compiler-rt/lib/profile/InstrProfilingUtil.c
M compiler-rt/lib/profile/InstrProfilingUtil.h
M compiler-rt/test/profile/Posix/instrprof-fork.c
A compiler-rt/test/profile/instrprof-no-mmap-during-merging.c
Log Message:
-----------
[profile] Implement a non-mmap path when reading profile files from a non-local filesystem (#131177)
On AIX, when accessing mmap'ed memory associated to a file on NFS, a
SIGBUS might be raised at random.
The problem is still in open state with the OS team.
This PR teaches the profile runtime, under certain conditions, to avoid
the mmap when reading the profile file during online merging.
This PR has no effect on any platform other than AIX because I'm not
aware of this problem on other platforms.
Other platforms can easily opt-in to this functionality in the future.
The logic in function `is_local_filesystem` was copied from
[llvm/lib/Support/Unix/Path.inc](https://github.com/llvm/llvm-project/blob/f388ca3d9d9a58e3d189458b590ba68dfd9e5a2d/llvm/lib/Support/Unix/Path.inc#L515)
(https://reviews.llvm.org/D58801), because it seems that the
compiler-rt/profile cannot reuse code from llvm except through
`InstrProfData.inc`.
Thanks to @hubert-reinterpretcast for substantial feedback downstream.
---------
Co-authored-by: Wael Yehia <wyehia at ca.ibm.com>
Co-authored-by: Hubert Tong <hubert.reinterpretcast at gmail.com>
Commit: 123c0040d4e6565091f20c4d6483ae76f1d8f57c
https://github.com/llvm/llvm-project/commit/123c0040d4e6565091f20c4d6483ae76f1d8f57c
Author: Roland McGrath <mcgrathr at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_dl_phdr_info.h
M libc/include/CMakeLists.txt
R libc/include/link.h.def
M libc/include/link.yaml
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/__dl_iterate_phdr_callback_t.h
A libc/include/llvm-libc-types/struct_dl_phdr_info.h
M libc/src/CMakeLists.txt
A libc/src/link/CMakeLists.txt
A libc/src/link/dl_iterate_phdr.cpp
A libc/src/link/dl_iterate_phdr.h
M libc/utils/hdrgen/hdrgen/header.py
Log Message:
-----------
[libc] Define (stub) dl_iterate_phdr (#131436)
This fleshes out the <link.h> a little more, including the
`struct dl_phdr_info` type and declaring the dl_iterate_phdr
function. There is only a no-op implementation without tests, as
for the existing dlfcn functions.
Commit: b42f8ec26d5098128b32cc12b5daf342d26fd42e
https://github.com/llvm/llvm-project/commit/b42f8ec26d5098128b32cc12b5daf342d26fd42e
Author: David Green <david.green at arm.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/test/Analysis/CostModel/AArch64/aggregates.ll
M llvm/test/Analysis/CostModel/AArch64/cast.ll
M llvm/test/Analysis/CostModel/AArch64/cmp.ll
M llvm/test/Analysis/CostModel/AArch64/div.ll
M llvm/test/Analysis/CostModel/AArch64/div_cte.ll
M llvm/test/Analysis/CostModel/AArch64/fp-conversions-odd-vector-types.ll
M llvm/test/Analysis/CostModel/AArch64/fptoi_sat.ll
M llvm/test/Analysis/CostModel/AArch64/load-to-trunc.ll
M llvm/test/Analysis/CostModel/AArch64/logicalop.ll
M llvm/test/Analysis/CostModel/AArch64/masked_ldst.ll
M llvm/test/Analysis/CostModel/AArch64/mem-op-cost-model.ll
M llvm/test/Analysis/CostModel/AArch64/reduce-minmax.ll
M llvm/test/Analysis/CostModel/AArch64/rem.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-extract.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/shuffle-store.ll
M llvm/test/Analysis/CostModel/AArch64/store-ptr.ll
M llvm/test/Analysis/CostModel/AArch64/store.ll
M llvm/test/Analysis/CostModel/AArch64/sve-math.ll
M llvm/test/Analysis/CostModel/AArch64/sve-min-max.ll
M llvm/test/Analysis/CostModel/AArch64/vector-reduce.ll
Log Message:
-----------
[AArch64] Update a number of costmodel tests with -cost-kind=all. NFC
Commit: 6313550aced5a611213ac2a551e3a900e8740506
https://github.com/llvm/llvm-project/commit/6313550aced5a611213ac2a551e3a900e8740506
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
Log Message:
-----------
[IPO] Avoid repeated hash lookups (NFC) (#131720)
Commit: 460b9cda8109b6978a274e1ea9d762f888b044f6
https://github.com/llvm/llvm-project/commit/460b9cda8109b6978a274e1ea9d762f888b044f6
Author: Roland McGrath <mcgrathr at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
Log Message:
-----------
[libc] Disable dl_iterate_phdr entrypoint for linux fullbuild (#131893)
There are some issues with typedef conflicts between libc headers
and Linux kernel headers arising. Disable building the new code
for Linux for now.
Commit: d039af33096c0a83b03475a240d5e281e2271c44
https://github.com/llvm/llvm-project/commit/d039af33096c0a83b03475a240d5e281e2271c44
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libc/test/UnitTest/CMakeLists.txt
A libc/test/UnitTest/ErrnoCheckingTest.h
M libc/test/src/unistd/CMakeLists.txt
M libc/test/src/unistd/unlink_test.cpp
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/unistd/BUILD.bazel
Log Message:
-----------
[libc] Create ErrnoCheckingTest harness to simplify errno tests. (#131703)
See the discussion in PR
https://github.com/llvm/llvm-project/pull/131650 on why we need to clear
the errno at the beginning of some tests, and outlining the various solutions.
Introduce ErrnoCheckingTest base class and use it for unlink_test as an example.
Commit: fbbb33f4001d24445f0a103f0a5464f129679a76
https://github.com/llvm/llvm-project/commit/fbbb33f4001d24445f0a103f0a5464f129679a76
Author: Ian Wood <ianwood2024 at u.northwestern.edu>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Utils/IndexingUtils.cpp
M mlir/test/Dialect/Linalg/invalid.mlir
M mlir/test/Dialect/Linalg/transform-op-pack.mlir
Log Message:
-----------
[mlir] Fix crash when verifying linalg.transpose (#131733)
Adds checks in `isPermutationVector` for indices that are outside of the
bounds and removes the assert.
Signed-off-by: Ian Wood <ianwood2024 at u.northwestern.edu>
Commit: 0619892cab8a5cc24e25f7eddcff7316757a1ff0
https://github.com/llvm/llvm-project/commit/0619892cab8a5cc24e25f7eddcff7316757a1ff0
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M .ci/metrics/metrics.py
Log Message:
-----------
[CI] Bump max workflow to process count in metrics
This patch bumps the maximum number of metrics to look through when
collecting metrics data. We are currently running into issues where we
are losing data due to the most recent 1000 workflows not containing the
workflows that we actually need to query. Just double it for now.
I plan on monitoring this reasonably closely to ensure we do not run
into issues, mainly API rate limits.
Commit: bc8b19c7575f3882b7655e129d4fc3b74c7fbba3
https://github.com/llvm/llvm-project/commit/bc8b19c7575f3882b7655e129d4fc3b74c7fbba3
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/Stmt.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/test/CodeGenCXX/builtins.cpp
M clang/test/CodeGenCXX/mangle.cpp
A clang/test/SemaCXX/builtin-structured-binding-size.cpp
Log Message:
-----------
[Clang] Introduce a trait to determine the structure binding size (#131515)
Introduce a trait to determine the number of bindings that would be
produced by
```cpp
auto [...p] = expr;
```
This is necessary to implement P2300
(https://eel.is/c++draft/exec#snd.concepts-5), but can also be used to
implement a general get<N> function that supports aggregates
`__builtin_structured_binding_size` is a unary type trait that evaluates
to the number of bindings in a decomposition
If the argument cannot be decomposed, a sfinae-friendly error is
produced.
A type is considered a valid tuple if `std::tuple_size_v<T>` is a valid
expression, even if there is no valid `std::tuple_element`
specialization or suitable `get` function for that type.
Fixes #46049
Commit: 4ab011a9502218fc08a609348054307b4a651d83
https://github.com/llvm/llvm-project/commit/4ab011a9502218fc08a609348054307b4a651d83
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/stores-of-loads-merging.ll
Log Message:
-----------
[RISCV] Precommit store merge tests for pr130430
Commit: 7d7b58bc5d2bacc3d76463d2ee06a13d2a08b084
https://github.com/llvm/llvm-project/commit/7d7b58bc5d2bacc3d76463d2ee06a13d2a08b084
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M flang-rt/lib/runtime/transformational.cpp
M flang-rt/unittests/Runtime/Transformational.cpp
M flang/docs/ArrayRepacking.md
M flang/include/flang/Optimizer/Builder/Runtime/Transformational.h
M flang/include/flang/Runtime/transformational.h
M flang/lib/Optimizer/Builder/Runtime/Transformational.cpp
Log Message:
-----------
[flang-rt] Added ShallowCopy API. (#131702)
This API will be used for copying non-contiguous arrays
into contiguous temporaries to support `-frepack-arrays`.
The builder factory API will be used in the following commits.
Commit: 71f391040969c0dbdf4398a78a742b1a730e2e38
https://github.com/llvm/llvm-project/commit/71f391040969c0dbdf4398a78a742b1a730e2e38
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/test/lit.cfg.py
Log Message:
-----------
[clang][lit] mkdir before mkstemp in is_filesystem_case_insensitive() (#131036)
In the CMake build test_exec_root already exists here, but not in the gn
build, which causes this to fail.
Commit: 592a3ba125e9ff6fccc71084e325c02119523869
https://github.com/llvm/llvm-project/commit/592a3ba125e9ff6fccc71084e325c02119523869
Author: Prashanth <TheStarOne01 at proton.me>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M libc/docs/CMakeLists.txt
M libc/docs/headers/index.rst
A libc/utils/docgen/sys/utsname.yaml
Log Message:
-----------
[libc][docs] Add sys/utsname header and documentation for uname function (#131817)
These changes tracks `utsname.h` for the implementation status of
functions and macros, with respect to the issue (
https://github.com/llvm/llvm-project/issues/122006 ).
Commit: d51bc835115f707f95acf37396f387b039e6bbc5
https://github.com/llvm/llvm-project/commit/d51bc835115f707f95acf37396f387b039e6bbc5
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Only skip live-ins with constants in materializeBroadccast (NFC)
Currently this should be NFC, but will be needed in future patches.
Commit: 00c5edae173e85067a5db6f49ed6c4778787be55
https://github.com/llvm/llvm-project/commit/00c5edae173e85067a5db6f49ed6c4778787be55
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/stores-of-loads-merging.ll
Log Message:
-----------
[RISCV] Fix typo in test added in 4ab011a95
Let's not talk about how much code I traced through before realizing
the bug was in the test, not the code...
Commit: 1442fe0c897a3a59515c3bf3c8bfe6b4d763b4a8
https://github.com/llvm/llvm-project/commit/1442fe0c897a3a59515c3bf3c8bfe6b4d763b4a8
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
Log Message:
-----------
[LV] Update test to use dereferenceable attribute instead of assumption.
Use dereferenceable attribute instead of assumption to make the tests
independent of https://github.com/llvm/llvm-project/pull/128061.
Commit: c02b935a9be888bbdf9f8cb0bf980bd411ae5893
https://github.com/llvm/llvm-project/commit/c02b935a9be888bbdf9f8cb0bf980bd411ae5893
Author: Jon Chesterfield <jonathanchesterfield at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M offload/DeviceRTL/src/State.cpp
Log Message:
-----------
[openmp][nfc] Refactor shared/lds smartstack for spirv (#131905)
Spirv doesn't have implicit conversions between address spaces (at least
at present, we might need to change that) and address space qualified
*this pointers are not handled well by clang. This commit changes the
single instance of the smartstack to be explicitly a singleton, for
fractionally simpler IR generation (no this pointer) and to sidestep the
work in progress spirv64-- openmp target not being able to compile the
original version.
Commit: 206f78dfec71b86d4f58ef6bf23cc12151f5b54d
https://github.com/llvm/llvm-project/commit/206f78dfec71b86d4f58ef6bf23cc12151f5b54d
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M offload/DeviceRTL/include/Mapping.h
M offload/DeviceRTL/src/Mapping.cpp
Log Message:
-----------
[OpenMP] Use 'gpuintrin.h' definitions for simple block identifiers (#131631)
Summary:
This patch ports the runtime to use `gpuintrin.h` instead of calling the
builtins for most things. The `lanemask_gt` stuff was left for now with
a fallback.
AMD version for Ron
https://gist.github.com/jhuber6/42014d635b9a8158727640876bf47226.
Commit: 395bdebebd23962613e05c296ab608d2b669c649
https://github.com/llvm/llvm-project/commit/395bdebebd23962613e05c296ab608d2b669c649
Author: Jon Chesterfield <jonathanchesterfield at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M offload/DeviceRTL/src/State.cpp
Log Message:
-----------
Revert "[openmp][nfc] Refactor shared/lds smartstack for spirv (#131905)"
This reverts commit c02b935a9be888bbdf9f8cb0bf980bd411ae5893.
Failed a check-offload test under CI
Commit: a65cbc4213ebf263f9e838969fca34f0c72c3f1c
https://github.com/llvm/llvm-project/commit/a65cbc4213ebf263f9e838969fca34f0c72c3f1c
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M compiler-rt/test/asan/TestCases/Darwin/suppressions-sandbox.cpp
Log Message:
-----------
Revert "[Darwin][ASan][Test] Create a noinlined wrapper function for reliable suppression in test. (#131247)"
This reverts commit 78f74f686bfe21262f8b171e21450186edd081ab.
Breaks the test on x86-64 mac, e.g. https://green.lab.llvm.org/job/llvm.org/job/clang-stage1-RA/3852/.
Commit: 056264b838df94b689d3213424d78f8b9452041b
https://github.com/llvm/llvm-project/commit/056264b838df94b689d3213424d78f8b9452041b
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
A clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h
M clang/lib/Tooling/DependencyScanning/CMakeLists.txt
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
A clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
Log Message:
-----------
[clang][deps] Implement efficient in-process `ModuleCache` (#129751)
The dependency scanner uses implicitly-built Clang modules under the
hood. This system was originally designed to handle multiple concurrent
processes working on the same module cache, and mutual exclusion was
implemented using file locks. The scanner, however, runs within single
process, making file locks unnecessary. This patch virtualizes the
interface for module cache locking and provides an implementation based
on `std::shared_mutex`. This reduces `clang-scan-deps` runtime by ~17%
on my benchmark.
Note that even when multiple processes run a scan on the same module
cache (and therefore don't coordinate efficiently), this should still be
correct due to the strict context hash, the write-through
`InMemoryModuleCache` and the logic for rebuilding out-of-date or
incompatible modules.
Commit: d32c6dd9be6c243a2891cd9b5149f71da465aed0
https://github.com/llvm/llvm-project/commit/d32c6dd9be6c243a2891cd9b5149f71da465aed0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
Log Message:
-----------
[RISCV] Use MnemonicAlias for 'fssr' and 'frsr'. NFC (#131877)
Commit: bc646f4b302339717e363efa3e57ec3468d190aa
https://github.com/llvm/llvm-project/commit/bc646f4b302339717e363efa3e57ec3468d190aa
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Tooling/DependencyScanning/BUILD.gn
Log Message:
-----------
[gn build] Port 056264b838df
Commit: 70bf5e514b21b34b01fb572428f8fbdf267d5c3b
https://github.com/llvm/llvm-project/commit/70bf5e514b21b34b01fb572428f8fbdf267d5c3b
Author: Maksim Panchenko <maks at fb.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M bolt/lib/Target/AArch64/AArch64MCSymbolizer.cpp
M bolt/lib/Target/AArch64/AArch64MCSymbolizer.h
A bolt/test/AArch64/got-load-symbolization.s
Log Message:
-----------
[BOLT][AArch64] Symbolize ADRP after relaxation (#131414)
When the linker relaxes a GOT load, it changes ADRP+LDR instruction pair
into ADRP+ADD. It is relatively straightforward to detect and symbolize
the second instruction in the disassembler. However, it is not always
possible to properly symbolize the ADRP instruction without looking at
the second instruction. Hence, we have the FixRelaxationPass that adjust
the operand of ADRP by looking at the corresponding ADD.
This PR tries to properly symbolize ADRP earlier in the pipeline, i.e.
in AArch64MCSymbolizer. This change makes it easier to adjust the
instruction once we add AArch64 support in `scanExternalRefs()`.
Additionally, we get a benefit of looking at proper operands while
observing the function state prior to running FixRelaxationPass.
To disambiguate the operand of ADRP that has a GOT relocation against
it, we look at the contents/value of the operand. If it contains an
address of a page that is valid for GOT, we assume that the operand
wasn't modified by the linker and leave it up to FixRelaxationPass to do
a proper adjustment. If the page referenced by ADRP cannot point to GOT,
then it's an indication that the linker has modified the operand and we
substitute the operand with a non-GOT reference to the symbol.
Commit: deb0f3c09b77cebe01976539e2d5f07964e2dc2a
https://github.com/llvm/llvm-project/commit/deb0f3c09b77cebe01976539e2d5f07964e2dc2a
Author: Jon Chesterfield <jonathanchesterfield at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M offload/DeviceRTL/src/State.cpp
M offload/include/Shared/Utils.h
Log Message:
-----------
[openmp][nfc] Use builtin align in the devicertl (#131918)
Noticed while extracting the smartstack as a test case
Commit: 934ef305227ad4bd3d95c92e0f9cf1ad605ced9d
https://github.com/llvm/llvm-project/commit/934ef305227ad4bd3d95c92e0f9cf1ad605ced9d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
Log Message:
-----------
[clang] Fix warnings
This patch fixes:
clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp:38:5:
error: 'shared_lock' may not intend to support class template
argument deduction [-Werror,-Wctad-maybe-unsupported]
clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp:68:7:
error: 'lock_guard' may not intend to support class template
argument deduction [-Werror,-Wctad-maybe-unsupported]
Commit: e6896f80da0d094518fce54b0fe1238f0f2c9a41
https://github.com/llvm/llvm-project/commit/e6896f80da0d094518fce54b0fe1238f0f2c9a41
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/test/MC/RISCV/rvzfh-aliases-valid.s
Log Message:
-----------
[RISCV] Remove unnecessary alias tests from rvzfh-aliases-valid.s. NFC
These are testing fmv.x.h and fmv.h.x which aren't aliases. This
appears to have been incorrectly copied from rvf-aliases-valid.s
where fmv.x.s and fmv.s.x are aliases for fmv.x.w and fmv.w.x.
Commit: 187277474a789b9dd1ef7aeeeb90d315a60c6e8b
https://github.com/llvm/llvm-project/commit/187277474a789b9dd1ef7aeeeb90d315a60c6e8b
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
Log Message:
-----------
[clang][deps] Fix build after #129751
Some compilers don't like having a member variable name that shadows the type name.
Commit: 2203caf860418b9ecbed8b0b205c5265ae7b4743
https://github.com/llvm/llvm-project/commit/2203caf860418b9ecbed8b0b205c5265ae7b4743
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang] Update C++ DR status page (#131812)
CWG472 is one of the CWG issues that were assigned to Mike Miller with
`drafting` status, but recently got back to `open`, because Mike is no
longer active in CWG. Nothing to be done here, except for changing the
status.
CWG1432 was recently reopened after a CWG reflector discussion. I
changed the status to claim that we test for the previous resolution.
Commit: a6c09d40ed7fe076358429c0978838904c9cceae
https://github.com/llvm/llvm-project/commit/a6c09d40ed7fe076358429c0978838904c9cceae
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/div-codesize.ll
R llvm/test/Analysis/CostModel/X86/div-latency.ll
R llvm/test/Analysis/CostModel/X86/div-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/div.ll
R llvm/test/Analysis/CostModel/X86/rem-codesize.ll
R llvm/test/Analysis/CostModel/X86/rem-latency.ll
R llvm/test/Analysis/CostModel/X86/rem-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/rem.ll
Log Message:
-----------
[CostModel][X86] merge integer div/rem costs tests using -cost-kind=all (#131873)
Commit: a21dd255ad79442a847581e3f06900ba0a534a49
https://github.com/llvm/llvm-project/commit/a21dd255ad79442a847581e3f06900ba0a534a49
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/www/make_cxx_dr_status
Log Message:
-----------
[clang] Enforce UTF-8 in `make_cxx_dr_status` (#131816)
Otherwise Windows users have troubles with lexer tests that use emojis.
Commit: 7d4332a8f96483c02f853c353d475b2e445d0f79
https://github.com/llvm/llvm-project/commit/7d4332a8f96483c02f853c353d475b2e445d0f79
Author: thetruestblue <bblueconway at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M compiler-rt/test/asan/lit.cfg.py
Log Message:
-----------
[Darwin][Test][leaks] Disable leak detection for asan tests on non-Intel Darwin devices (#131676)
`detect_leaks` option for asan does not work well on Apple Silicon
(arm64) MacOS devices and results in hundreds of ASan test failures when
run with this option set for all tests.
We should not add this option for tests unless we are targeting an
x86_64 device for Darwin, where this seems to be tested and working
well.
rdar://147069153
Commit: 2b7c729e34b1522a737f718c492bf18cdbcd5f60
https://github.com/llvm/llvm-project/commit/2b7c729e34b1522a737f718c492bf18cdbcd5f60
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
R llvm/test/CodeGen/RISCV/rvv/common-shuffle-patterns.ll
R llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
R llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-shuffles.ll
R llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
R llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave2.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-fp-interleave.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-fp.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int-interleave.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int.ll
R llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shufflevector-vnsrl.ll
Log Message:
-----------
[RISCV] Normalize test naming and layout for shuffle tests [NFC]
Commit: 93b8ef463a071d6057bc826fd244e94e8361518e
https://github.com/llvm/llvm-project/commit/93b8ef463a071d6057bc826fd244e94e8361518e
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-zipeven-zipodd.ll
Log Message:
-----------
[RISCV] Split and expand test coverage for zipeven/zipodd shuffles [NFC]
Commit: 8a91f6bcda4536a866e2e0b596687ecd19ceeef5
https://github.com/llvm/llvm-project/commit/8a91f6bcda4536a866e2e0b596687ecd19ceeef5
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
Log Message:
-----------
[VPlan] Use CurrentParentLoop instead of looking up via CFG (NFC).
There is no need to look up the current parent loop via LoopInfo and the
vector preheader; we can simply use CurrentParentLoop.
Commit: 870f753f1f5e67aebccb46b158083a6c45bebce6
https://github.com/llvm/llvm-project/commit/870f753f1f5e67aebccb46b158083a6c45bebce6
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reduction.ll
M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/X86/scev-checks-unprofitable.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
Log Message:
-----------
[VPlan] Also materialize broadcasts for backedge-taken-counts (NFC).
Also include VPlan's BTC in the set of VPValues to materialize
broadcasts for, if it is used.
Commit: 98943c4bd84e61ecb2bf79983baa7138e8db7fed
https://github.com/llvm/llvm-project/commit/98943c4bd84e61ecb2bf79983baa7138e8db7fed
Author: Pedro Lobo <pedro.lobo at tecnico.ulisboa.pt>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/include/clang/Basic/arm_mve.td
M clang/include/clang/Basic/arm_mve_defs.td
M clang/test/CodeGen/arm-mve-intrinsics/admin.c
Log Message:
-----------
[ARM,MVE] Change placeholder from `undef` to `poison` (#131689)
Call `insertelement` on a `poison` value instead of `undef`.
Commit: b7ed5c8e06221d66ee69036e24a079ee3f528a99
https://github.com/llvm/llvm-project/commit/b7ed5c8e06221d66ee69036e24a079ee3f528a99
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M flang/lib/Support/Fortran.cpp
M flang/test/Semantics/cuf13.cuf
Log Message:
-----------
[flang][cuda] Check for ignore_tkr(d) when resolving generic call (#131923)
Commit: bb0cc6948725b8030069c07aeff1fe6abd8fa027
https://github.com/llvm/llvm-project/commit/bb0cc6948725b8030069c07aeff1fe6abd8fa027
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-members.cpp
Log Message:
-----------
[webkit.NoUncountedMemberChecker] Fix a regression that every class is treated as if it's ref countable. (#131249)
This PR fixes a regression that webkit.NoUncountedMemberChecker and
alpha.webkit.NoUncheckedMemberChecker emits warnings for every class as
if they supported ref counting and checked ptr because we were
erroneously coercing the return value of isRefCountable and
isCheckedPtrCapable, which is std::optional<bool>, to boolean values.
Commit: 43c21f96a7626364054109af5aa4e84bf537c1c5
https://github.com/llvm/llvm-project/commit/43c21f96a7626364054109af5aa4e84bf537c1c5
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M .ci/compute-projects.sh
M .ci/generate-buildkite-pipeline-premerge
M .ci/monolithic-linux.sh
M flang-rt/README.md
Log Message:
-----------
Revert "[Premerge] Add flang-rt (#128678)" (#131915)
This reverts commit 95d28fe503cc3d2bc0bb980442d3defaf199ea5a.
I did not fully realize the implications of this change when reviewing.
With how it is set up currently, it causes clang and all of the runtimes
to be built and tested everytime a change to MLIR is made. This is a
large regression in build/test time, which seems to have been causing
large queueing delays.
Reverting for now. Once we rework the runtimes build for premerge (which
I hope to do soon, ideally in the next week), I will make sure flang-rt
gets added in.
Commit: b251c29af45d3440374f53bb4c1645e5968593f7
https://github.com/llvm/llvm-project/commit/b251c29af45d3440374f53bb4c1645e5968593f7
Author: Jerry-Ge <jerry.ge at arm.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
Log Message:
-----------
[mlir][tosa] Update PadOp examples in the dialect description (#131919)
* pad_const is now required for tosa.pad op after
PR[@129336](https://github.com/llvm/llvm-project/pull/129336)
* updated the examples in the dialect description section to reflect
this change.
Signed-off-by: Jerry Ge <jerry.ge at arm.com>
Commit: 0e4116a6b999058a96710d598d2384075185f2c9
https://github.com/llvm/llvm-project/commit/0e4116a6b999058a96710d598d2384075185f2c9
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/test/CodeGen/AMDGPU/promote-alloca-multidim.ll
Log Message:
-----------
[AMDGPU] Fix typing error in multi dimensional promote alloca (#131763)
Fix type error when GEP uses i64 index introduced in #127973.
Commit: 7a9473b1b0b8bdfd5f3fcae578ddcca5b49d8803
https://github.com/llvm/llvm-project/commit/7a9473b1b0b8bdfd5f3fcae578ddcca5b49d8803
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M flang-rt/lib/runtime/transformational.cpp
Log Message:
-----------
[flang-rt] Fixed build issue in flang-runtime-cuda-clang.
Commit: 854a4f2bbb06ba11fc45b6423ba470d07f247b20
https://github.com/llvm/llvm-project/commit/854a4f2bbb06ba11fc45b6423ba470d07f247b20
Author: A. Jiang <de34 at live.cn>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libcxx/include/__algorithm/inplace_merge.h
M libcxx/include/algorithm
M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge.pass.cpp
M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
M libcxx/test/std/algorithms/robust_re_difference_type.compile.pass.cpp
A libcxx/test/support/constexpr_random.h
M libcxx/test/support/counting_predicates.h
Log Message:
-----------
[libc++] Implement part of P2562R1: constexpr `std::inplace_merge` (#129008)
Drive-by:
- Adds `constexpr_random.h` for pseudo-randomizing or shuffling in tests
for constant evaluation.
Commit: 9ed772cecc23f5f5b060720399b010275bbb7457
https://github.com/llvm/llvm-project/commit/9ed772cecc23f5f5b060720399b010275bbb7457
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
A flang/test/Transforms/debug-dummy-argument.fir
Log Message:
-----------
[flang] Fixed computation of position of function's arg in AddDebugInfo. (#131672)
I am working on `-frepack-array` feature (#127147), which produces
non-trivial manipulations with arguments of `fir.declare`.
In this case, we end up with CFG computation of the `fir.declare`
argument, and AddDebugInfo pass incorrectly mapped two dummy arguments
to the same arg index in the debug attributes.
This patch makes sure that we assign the arg index only if we can prove
that we've traced the block argument to the function's entry block.
I believe this problem is not specific to `-frepack-arrays`, e.g.
it may appear due to MLIR inlining as well.
Commit: af7c8c475ab97382a466bce8ad2fd091e0e09c1e
https://github.com/llvm/llvm-project/commit/af7c8c475ab97382a466bce8ad2fd091e0e09c1e
Author: Connector Switch <c8ef at outlook.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/include/search.yaml
M libc/src/search/CMakeLists.txt
M libc/src/search/lfind.cpp
A libc/src/search/lsearch.cpp
A libc/src/search/lsearch.h
M libc/test/src/search/CMakeLists.txt
A libc/test/src/search/lsearch_test.cpp
Log Message:
-----------
[libc] Implement `search/lsearch` (#131431)
ref:
- https://man7.org/linux/man-pages/man3/lsearch.3.html
- https://pubs.opengroup.org/onlinepubs/009696699/functions/lsearch.html
Commit: d2c41fb85d960e094a16686fb0ff67d9a2f01d8d
https://github.com/llvm/llvm-project/commit/d2c41fb85d960e094a16686fb0ff67d9a2f01d8d
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
M llvm/test/MC/RISCV/rv32i-invalid.s
A llvm/test/MC/RISCV/rvzfbfmin-aliases-valid.s
M llvm/test/MC/RISCV/rvzfh-pseudos.s
A llvm/test/MC/RISCV/rvzfhmin-aliases-valid.s
Log Message:
-----------
[RISCV] Correct the predicates for the flh/fsh InstAlias and assembler pseudos to include Zfbfmin. (#131920)
Commit: fbc1038f0cfe4038d412914cfd8b2ee4a48bba45
https://github.com/llvm/llvm-project/commit/fbc1038f0cfe4038d412914cfd8b2ee4a48bba45
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-invalid.mlir
Log Message:
-----------
[mlir][TosaToLinalg] Only support ranked tensor for `reduce` and `gather` (#131805)
This PR adds checks for ranked tensors in converter of reduce and gather
to prevent crash. Fixes #131087.
Commit: ecae8d0f77e94504c186086720fd40a8549ba138
https://github.com/llvm/llvm-project/commit/ecae8d0f77e94504c186086720fd40a8549ba138
Author: john-stuart2 <john.stuart.science at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/docs/GlobalISel/GenericOpcode.rst
Log Message:
-----------
[Docs] Add more vector examples (#131887)
The order of parameters is derived from GenericOpcodes.td. I wanted to
keep the examples separate from the fix.
Commit: 6f44be97d035c7c050e5ee4081154a8441a2a137
https://github.com/llvm/llvm-project/commit/6f44be97d035c7c050e5ee4081154a8441a2a137
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/test/CodeGen/fake-use-determinism.c
M llvm/include/llvm/IR/Intrinsics.td
M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
Log Message:
-----------
IR: Make llvm.fake.use a DefaultAttrsIntrinsic (#131743)
This shouldn't be special and is just an ordinary sideeffect.
Commit: 2e39533e5055bc82bf5a1b2a888e5d65a33e72f9
https://github.com/llvm/llvm-project/commit/2e39533e5055bc82bf5a1b2a888e5d65a33e72f9
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/hsa-metadata-queue-ptr-v4.ll
M llvm/test/CodeGen/AMDGPU/hsa-metadata-queue-ptr-v5.ll
Log Message:
-----------
AMDGPU: Fix broken check prefix and degraded cov4 test coverage (#131757)
Commit: a274ea1e3a3e1a824e876732074e4638e197b076
https://github.com/llvm/llvm-project/commit/a274ea1e3a3e1a824e876732074e4638e197b076
Author: ming <99472920+yanming123456 at users.noreply.github.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-int-vp.ll
Log Message:
-----------
[RISCV] Call SimplifyDemandedBits on the scalar input of vmv_s_x_vl (#131711)
The vmv.s.x instruction copies the scalar integer register to element 0
of the destination vector register. If SEW < XLEN, the least-significant
bits are copied and the upper XLEN-SEW bits are ignored.
Co-authored-by: yanming <ming.yan at terapines.com>
Commit: 04e39ce3fddaaec41d9c7babcca55133d7e49969
https://github.com/llvm/llvm-project/commit/04e39ce3fddaaec41d9c7babcca55133d7e49969
Author: Vy Nguyen <vyng at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M lldb/include/lldb/Core/Telemetry.h
M lldb/source/Core/Telemetry.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/Target.cpp
Log Message:
-----------
[LLDB][Telemetry]Define TargetInfo for collecting data about a target (#127834)
Co-authored-by: Pavel Labath <pavel at labath.sk>
Commit: 40885572783b1b1d3fe5dc7bce119f08728dc11f
https://github.com/llvm/llvm-project/commit/40885572783b1b1d3fe5dc7bce119f08728dc11f
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
Log Message:
-----------
[lldb-dap] Move request capabilities into request handlers (NFC) (#131943)
This distributes the registration of request related capabilities to the
corresponding request handler. Global and unsupported capabilities are
registered at the DAP level.
Commit: 1028ea9e2641341436555347fb65d6f2eafcfbdd
https://github.com/llvm/llvm-project/commit/1028ea9e2641341436555347fb65d6f2eafcfbdd
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/Handler/RequestHandler.h
Log Message:
-----------
[lldb-dap] RequestHandler::getCommand -> RequestHandler::GetCommand (NFC)
Chang the capitalization of getCommand to comply with LLDB's code style.
Commit: 193866bc243ec466a6354a6c5d8ad8193157fe90
https://github.com/llvm/llvm-project/commit/193866bc243ec466a6354a6c5d8ad8193157fe90
Author: Krzysztof Drewniak <krzysdrewniak at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/TableGen/Record.cpp
A llvm/test/TableGen/isa-non-primary.td
Log Message:
-----------
[tblgen] Fix behavior of !isa to prevent premature folding (#130442)
The test included with this commit shows a case where, even though a
record's true type was !isa<> some unrelated class, the isa<> operator
wolud use the declared type of the argument it was examining in order to
conclude that the !isa<> expression had to be be false.
The issues is fixed by checking to make sure that the argument to the
!isa operator is fully concrete before declaring its result to be false.
Commit: 428e3a27c35935197bb7b832dacb8fa468b4bc59
https://github.com/llvm/llvm-project/commit/428e3a27c35935197bb7b832dacb8fa468b4bc59
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
M llvm/test/CodeGen/AMDGPU/hsa-metadata-queue-ptr-v4.ll
M llvm/test/CodeGen/AMDGPU/hsa-metadata-queue-ptr-v5.ll
M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
Log Message:
-----------
AMDGPU: Fix attributor not handling all trap intrinsics (#131758)
Commit: 5ac680c5bffdc216d131fd260d2b1c9435b15571
https://github.com/llvm/llvm-project/commit/5ac680c5bffdc216d131fd260d2b1c9435b15571
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/freeze.ll
Log Message:
-----------
AMDGPU: Add more freeze codegen tests (#131843)
Commit: 6cc23faaac28cc2b8aa0f6e64bfb92cceeaf4958
https://github.com/llvm/llvm-project/commit/6cc23faaac28cc2b8aa0f6e64bfb92cceeaf4958
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUMarkLastScratchLoad.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/test/CodeGen/AMDGPU/vgpr-mark-last-scratch-load.mir
Log Message:
-----------
[AMDGPU][NPM] Port AMDGPUMarkLastScratchLoad to NPM (#131738)
This finishes all passes for the optimized regalloc path.
---------
Co-authored-by: Matt Arsenault <Matthew.Arsenault at amd.com>
Commit: 3c8c2914e067e132af951f70d2b3577fe049e19a
https://github.com/llvm/llvm-project/commit/3c8c2914e067e132af951f70d2b3577fe049e19a
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/test/CodeGen/NVPTX/rotate.ll
M llvm/test/CodeGen/NVPTX/rotate_64.ll
Log Message:
-----------
[NVPTX] Improve 64bit FSH/ROT lowering when shift amount is constant (#131371)
When the sift amount of a 64-bit funnel-shift or rotate is constant, it
may be decomposed into two 32-bit funnel-sifts. This ensures that we
recover any possible performance losses associated with the correctness
fix in a131fbf1.
In order to efficiently represent the expansion with Selection DAG
nodes, NVPTXISD::BUILD_VECTOR and NVPTXISD::UNPACK_VECTOR are added
which allow the vector output/input to be represented as a scalar. In
the future, if we add support for the v2i32 type to the NVPTX backend
these nodes may be removed.
Commit: b3a4bf9d8f04018bfa81b7e97ec36b247e15b378
https://github.com/llvm/llvm-project/commit/b3a4bf9d8f04018bfa81b7e97ec36b247e15b378
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libcxx/include/module.modulemap
M libcxx/test/benchmarks/GenerateInput.h
R libcxx/test/benchmarks/algorithms/count.bench.cpp
R libcxx/test/benchmarks/algorithms/equal.bench.cpp
R libcxx/test/benchmarks/algorithms/find.bench.cpp
R libcxx/test/benchmarks/algorithms/for_each.bench.cpp
R libcxx/test/benchmarks/algorithms/mismatch.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/adjacent_find.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/any_all_none_of.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/contains.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/contains_subrange.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/count.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/ends_with.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/equal.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/find.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/find_end.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/find_first_of.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/find_last.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/fold.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/for_each.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/is_permutation.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/mismatch.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/search.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/search_n.bench.cpp
A libcxx/test/benchmarks/algorithms/nonmodifying/starts_with.bench.cpp
R libcxx/test/benchmarks/algorithms/ranges_contains.bench.cpp
R libcxx/test/benchmarks/algorithms/ranges_ends_with.bench.cpp
Log Message:
-----------
[libc++] Refactor and add benchmarks from [alg.nonmodifying] (#128206)
Commit: fd0e20a64bde212c20c269e7c1349d703e8159d5
https://github.com/llvm/llvm-project/commit/fd0e20a64bde212c20c269e7c1349d703e8159d5
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M flang/include/flang/Lower/ConvertVariable.h
M flang/include/flang/Lower/LoweringOptions.def
M flang/lib/Lower/ConvertVariable.cpp
A flang/test/Lower/repack-arrays.f90
M flang/tools/bbc/bbc.cpp
Log Message:
-----------
[flang] Generate fir.pack/unpack_array in Lowering. (#131704)
Basic generation of array repacking operations in Lowering.
Commit: 1757a235e386be908d5df01bb736085270d31686
https://github.com/llvm/llvm-project/commit/1757a235e386be908d5df01bb736085270d31686
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M compiler-rt/lib/ctx_profile/CtxInstrProfiling.cpp
M compiler-rt/lib/ctx_profile/CtxInstrProfiling.h
M compiler-rt/lib/ctx_profile/tests/CtxInstrProfilingTest.cpp
M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
M llvm/test/Transforms/PGOProfile/ctx-instrumentation.ll
Log Message:
-----------
[ctxprof] Make ContextRoot an implementation detail (#131416)
`ContextRoot` `FunctionData` are currently known by the llvm side, which has to instantiate and zero-initialize them.
This patch makes `FunctionData` the only global value that needs to be known and instantiated by the compiler. On the compiler-rt side, `ContextRoot`s are hung off `FunctionData`, when applicable.
This is for two reasons. First, it is a step towards root autodetection (in a subsequent patch). An autodetection mechanism would instantiate the `ContextRoot` for the detected roots, and then `__llvm_ctx_profile_get_context` would detect that and route to `__llvm_ctx_profile_start_context`.
The second reason is that we will hang off `ContextRoot` more complex datatypes (next patch), and we want to avoid too deep of a coupling between llvm and compiler-rt. Acting as a place to hang related data, `FunctionData` can stay simple - pointers and an (atomic) int (the mutex).
Commit: 35cd6a4c116b28405d814f571540819b08bc83f6
https://github.com/llvm/llvm-project/commit/35cd6a4c116b28405d814f571540819b08bc83f6
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/CodeGen/RISCV/rv32zbb-zbkb.ll
M llvm/test/CodeGen/RISCV/rv64zbb-zbkb.ll
M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
Log Message:
-----------
[RISCV] Sink NOT to be fold into ANDN/ORN/XNOR/VANDN (#131632)
Undoes a negation being hoisted out of a loop, so that it can be fold
into an inverted bitwise operation in the loop.
Implements #108840 on RISC-V
Commit: fa1228552fd85a8d989d7ac42afa270cc1e371ec
https://github.com/llvm/llvm-project/commit/fa1228552fd85a8d989d7ac42afa270cc1e371ec
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
M llvm/test/MC/X86/abs8.s
Log Message:
-----------
[X86] Move ABS8 special case to fixupNeedsRelaxationAdvanced
And add a test that X86MCCodeEmitter doesn't utilize a 1-byte
immediate for `cmp (3+$foo)@ABS8, %edi`
Commit: 4e4e4a190fb7c74453994935c843b09cc682f4bb
https://github.com/llvm/llvm-project/commit/4e4e4a190fb7c74453994935c843b09cc682f4bb
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/lib/TextAPI/InterfaceFile.cpp
M llvm/lib/TextAPI/TextStubV5.cpp
A llvm/test/tools/llvm-readtapi/compare-rpath-order.test
M llvm/tools/llvm-readtapi/DiffEngine.cpp
Log Message:
-----------
[TextAPI] Track RPaths in the order its provided via command line. (#131665)
RPaths are basically search paths for how to load dependent libraries.
The order they appear is the order the linker will search, we should
preserve that order in tbd files.
* Additionally add this level of detection to llvm-readtapi.
resolves: rdar://145603347
Commit: 7b00b0b7587120abbab0217c25f23f4e2ba8ae4e
https://github.com/llvm/llvm-project/commit/7b00b0b7587120abbab0217c25f23f4e2ba8ae4e
Author: Mészáros Gergely <gergely.meszaros at intel.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
A clang/test/CodeGen/cx-complex-range-real.c
M clang/test/CodeGen/cx-complex-range.c
Log Message:
-----------
[Clang][NFC] Extend cmplx range tests for #131129 (#131447)
- Add tests for complex divdent and real divisor
- Add tests for complex * real multiplication
- Add tests for multiply/divide and assign (`/=`,`*=`) operators
Commit: 57288136fecfac35ef161cb8f147d269715d2634
https://github.com/llvm/llvm-project/commit/57288136fecfac35ef161cb8f147d269715d2634
Author: Dave Lee <davelee.com at gmail.com>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M lldb/test/API/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py
Log Message:
-----------
[lldb] Fix TestBreakpointLocations (#131890)
Commit: efc31ecd2773ba378598c86b3a90d038075b9d4e
https://github.com/llvm/llvm-project/commit/efc31ecd2773ba378598c86b3a90d038075b9d4e
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/lib/Transforms/Utils/LoopInvariantCodeMotionUtils.cpp
M mlir/test/Transforms/loop-invariant-subset-hoisting.mlir
Log Message:
-----------
[mlir][LICM] Restrict LICM to pure tensor semantics (#129673)
This PR fixes a bug where LICM incorrectly allowed buffer semantics,
which could lead to a crash. Fixes #129416.
Commit: c34dc9a0cf328ace8a68069b1d1bbddd53179053
https://github.com/llvm/llvm-project/commit/c34dc9a0cf328ace8a68069b1d1bbddd53179053
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitCPass.cpp
M mlir/lib/Conversion/SCFToEmitC/SCFToEmitC.cpp
A mlir/test/Conversion/SCFToEmitC/scf-to-emitc-failed.mlir
Log Message:
-----------
[mlir][SCFToEmitC] Don't convert unsupported types in EmitC (#131786)
This PR adds check for unsupported types in emitc, which fixes a crash.
Fixes #131442.
Commit: 1bd6716d33e3a4f523058e358a4e84135f64dcf9
https://github.com/llvm/llvm-project/commit/1bd6716d33e3a4f523058e358a4e84135f64dcf9
Author: Mészáros Gergely <gergely.meszaros at intel.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/test/CodeGen/cx-complex-range-real.c
Log Message:
-----------
[Clang][CodeGen] Do not promote if complex divisor is real (#131451)
Relates-to: https://github.com/llvm/llvm-project/issues/131129
Commit: f017073cd8ac9e627db17678c6b64e9abe4fbec7
https://github.com/llvm/llvm-project/commit/f017073cd8ac9e627db17678c6b64e9abe4fbec7
Author: Mészáros Gergely <gergely.meszaros at intel.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/test/CodeGen/cx-complex-range.c
Log Message:
-----------
[Clang][CodeGen] Promote in complex compound divassign (#131453)
When `-fcomplex-arithmetic=promoted` is set complex divassign `/=` should
promote to a wider type the same way division (without assignment) does.
Prior to this change, Smith's algorithm would be used for divassign.
Fixes: https://github.com/llvm/llvm-project/issues/131129
Commit: 575fde0995aaf60882f433baebf56de2b89195e2
https://github.com/llvm/llvm-project/commit/575fde0995aaf60882f433baebf56de2b89195e2
Author: Mariusz Sikora <mariusz.sikora at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MIMGInstructions.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dual_intersect_ray.ll
M llvm/test/MC/AMDGPU/gfx12_asm_vimage.s
M llvm/test/MC/AMDGPU/gfx12_asm_vimage_alias.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vimage.txt
Log Message:
-----------
[AMDGPU] Add intrinsic and MI for image_bvh_dual_intersect_ray (#130038)
- Add llvm.amdgcn.image.bvh.dual.intersect.ray intrinsic and
image_bvh_dual_intersect_ray machine instruction.
- Add llvm_v10i32_ty and llvm_v10f32_ty
---------
Co-authored-by: Mateja Marjanovic <mateja.marjanovic at amd.com>
Commit: 125553a6779ba179a9b4b5212c531da2474258fd
https://github.com/llvm/llvm-project/commit/125553a6779ba179a9b4b5212c531da2474258fd
Author: Luke Lau <luke at igalia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
Log Message:
-----------
[RISCV] Add statistics for total LMUL spilled/reloaded (#131747)
The cost of a vector spill/reload may vary highly depending on the size
of the vector register being spilled, i.e. LMUL, so the usual
regalloc.NumSpills/regalloc.NumReloads statistics may not be an accurate
reflection of the total cost.
This adds two new statistics for RISCVInstrInfo that collects the total
number of vector registers spilled/reloaded within groups. It can be
used to get a better idea of regalloc changes in e.g. #131176 #113675
Commit: b5ef33b3b9771c169760bcfa3a72c37b794a4a4c
https://github.com/llvm/llvm-project/commit/b5ef33b3b9771c169760bcfa3a72c37b794a4a4c
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-18 (Tue, 18 Mar 2025)
Changed paths:
M llvm/tools/llvm-objdump/ELFDump.cpp
Log Message:
-----------
[llvm-objdump] Delete unused variables after #128434
Commit: e295f5dd119bf5584174bb3978bbd4ec5f50a0da
https://github.com/llvm/llvm-project/commit/e295f5dd119bf5584174bb3978bbd4ec5f50a0da
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
Log Message:
-----------
[OpenMP][IRBuilder] Don't initialize `kmp_dep_info` instances in alloc regions (#131795)
Fixes #121289
Given the following MLIR, where a variable: `x`, is `private` for the
`omp.parallel` op and a `depend` for the `omp.task` op:
```mlir
omp.private {type = private} @_QFEx_private_i32 : i32
llvm.func @nested_task_with_deps() {
%0 = llvm.mlir.constant(1 : i64) : i64
%1 = llvm.alloca %0 x i32 {bindc_name = "x"} : (i64) -> !llvm.ptr
omp.parallel private(@_QFEx_private_i32 %1 -> %arg0 : !llvm.ptr) {
omp.task depend(taskdependout -> %arg0 : !llvm.ptr) {
omp.terminator
}
omp.terminator
}
llvm.return
}
```
Before the fix proposed by this PR, the IR builder would emit the
allocation and the initialzation logic for the task's depedency info
struct in the parent function's alloc region:
```llvm
define void @nested_task_with_deps() {
....
%.dep.arr.addr = alloca [1 x %struct.kmp_dep_info], align 8
%2 = getelementptr inbounds [1 x %struct.kmp_dep_info], ptr %.dep.arr.addr, i64 0, i64 0
%3 = getelementptr inbounds nuw %struct.kmp_dep_info, ptr %2, i32 0, i32 0
%4 = ptrtoint ptr %omp.private.alloc to i64
store i64 %4, ptr %3, align 4
....
br label %entry
omp.par.entry: ; preds = %entry
....
%omp.private.alloc = alloca i32, align 4
```
Note the following:
- The private value `x` is alloced where it should be in the parallel
op's entry region,
- howerver, since the privae value is also a depedency of the task and
since allocation and initialzation of the task depedency info struct
both happen in the alloc region,
- this results in the private value being referenced before it is
actually defined.
This PR fixes the issue by only allocating the task depedency info in
the alloc region while initialzation happens in the current IP of the
function with the rest of the logic that depends on it.
Commit: e737b846b4a34940b626c2a1119779caaa430460
https://github.com/llvm/llvm-project/commit/e737b846b4a34940b626c2a1119779caaa430460
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
A mlir/test/Target/LLVMIR/openmp-target-nesting-in-host-ops.mlir
Log Message:
-----------
[flang][OpenMP] Translate OpenMP scopes when compiling for target device (#130078)
If a `target` directive is nested in a host OpenMP directive (e.g.
parallel, task, or a worksharing loop), flang currently crashes if the
target directive-related MLIR ops (e.g. `omp.map.bounds` and
`omp.map.info` depends on SSA values defined inside the parent host
OpenMP directives/ops.
This PR tries to solve this problem by treating these parent OpenMP ops
as "SSA scopes". Whenever we are translating for the device, instead of
completely translating host ops, we just tranlate their MLIR ops as pure
SSA values.
Commit: 8249492374b79793fe612da9d20aaa7e94832f91
https://github.com/llvm/llvm-project/commit/8249492374b79793fe612da9d20aaa7e94832f91
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/tools/llvm-reduce/deltas/ReduceOperandsToArgs.cpp
Log Message:
-----------
llvm-reduce: Remove redundant casts to InvokeInst
Commit: f304fd0d5c79024954f198a4714df6957cff5eef
https://github.com/llvm/llvm-project/commit/f304fd0d5c79024954f198a4714df6957cff5eef
Author: Matthias Springer <me at m-sp.org>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
Log Message:
-----------
[mlir][tensor][NFC] Remove dead code `tensor.extract_slice` canonicalization pattern (#131903)
Folding a cast into an `extract_slice` does not change the result type.
Commit: b907920058001ecb94fdd6939343fab5b786d96b
https://github.com/llvm/llvm-project/commit/b907920058001ecb94fdd6939343fab5b786d96b
Author: Shoreshen <372660931 at qq.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.ll
Log Message:
-----------
[AMDGPU] auto-generate file check line for amdgcn.bitcast.ll (#131955)
Replace check lines by auto-generated
Commit: a1c8dda205aa4a7f1c861c620793cdd2e60f2131
https://github.com/llvm/llvm-project/commit/a1c8dda205aa4a7f1c861c620793cdd2e60f2131
Author: Jim Lin <jim at andestech.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
Log Message:
-----------
[RISCV] Add attribute vscale_range(2,1024) to the tests for removing zero_extend on RV64. NFC (#131973)
The attribute `vscale_range(2,1024)` is added to each function by
default when the V extension is enabled,
so that the zero_extend for the i32 %evl to i64 on RV64 would be removed
usually.
Commit: 8a53324aa5c98787fe2334180a26b426f793d139
https://github.com/llvm/llvm-project/commit/8a53324aa5c98787fe2334180a26b426f793d139
Author: Diana Picus <Diana-Magda.Picus at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
A llvm/test/CodeGen/AMDGPU/release-vgprs-gfx12.mir
Log Message:
-----------
[AMDGPU] Deallocate VGPRs before exiting in dynamic VGPR mode (#130037)
In dynamic VGPR mode, Waves must deallocate all VGPRs before exiting. If
the shader program does not do this, hardware inserts `S_ALLOC_VGPR 0`
before S_ENDPGM, but this may incur some performance cost. Therefore
it's better if the compiler proactively generates that instruction.
This patch extends `si-insert-waitcnts` to deallocate the VGPRs via a
`S_ALLOC_VGPR 0` before any `S_ENDPGM` when in dynamic VGPR mode.
Commit: e9988c36ed788b2d1ce00b028bed51169bd8b02c
https://github.com/llvm/llvm-project/commit/e9988c36ed788b2d1ce00b028bed51169bd8b02c
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/CodeGenCXX/derived-to-base.cpp
A clang/test/SemaCXX/derived-to-base-propagate-qualifiers.cpp
Log Message:
-----------
[clang][Sema] Propagate qualifiers during derived-to-base conversion
When accessing a field member through a derived-to-base conversion,
ensure qualifiers are propagated to the base class subobject.
Fixes: https://github.com/llvm/llvm-project/issues/127683.
Commit: 614d8557dcd41aae31bd50e93fed3487f235ef11
https://github.com/llvm/llvm-project/commit/614d8557dcd41aae31bd50e93fed3487f235ef11
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/include/clang/Driver/OffloadBundler.h
M clang/lib/Driver/OffloadBundler.cpp
Log Message:
-----------
[OffloadBundler] Expose function to parse compressed bundle headers (#130284)
In COMGR we hash the header of compressed bundles. For this we take the
first bytes of the buffer (according to the maximum header size) and
hash them.
To have a more stable API, and to be able to pick only the hash field (which is
the only one we are actually interested in) of the header, we propose
a version independent header version that is common to all versions.
Commit: 74f5a028cb612e7e9bcf75d8ceb1a0a9d20fdb80
https://github.com/llvm/llvm-project/commit/74f5a028cb612e7e9bcf75d8ceb1a0a9d20fdb80
Author: Ricardo Jesus <rjj at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/test/CodeGen/AArch64/sve-vector-bits-codegen.c
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.h
A llvm/test/CodeGen/AArch64/sve-fixed-length-offsets.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-permute-zip-uzp-trn.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-shuffles.ll
M llvm/test/CodeGen/AArch64/sve-vscale-attr.ll
Log Message:
-----------
Reapply "[AArch64][SVE] Improve fixed-length addressing modes. (#129732)" (#130625)
The original patch from #129732 exposed a bug in `getMemVTFromNode`, which was returning incorrect types for fixed length vectors.
Commit: 415dd383e4066717178870f1927f542a3d96621a
https://github.com/llvm/llvm-project/commit/415dd383e4066717178870f1927f542a3d96621a
Author: liulin92 <lindanliulin at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
M llvm/test/tools/llvm-objdump/ELF/RISCV/branches.s
Log Message:
-----------
[RISCV][MC] Correct the register state update for auipc (#130897)
AUIPC is a 20-bits value which is used to form 32-bits offset thus it
should be a int32 value, then signed-extend to int64.
Commit: 7dbcdd578cd4d37b1f4094dbd17556be6382f1cc
https://github.com/llvm/llvm-project/commit/7dbcdd578cd4d37b1f4094dbd17556be6382f1cc
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lldb/include/lldb/Core/Telemetry.h
M lldb/source/Core/Telemetry.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/Target.cpp
Log Message:
-----------
Revert "[LLDB][Telemetry]Define TargetInfo for collecting data about a target (#127834)"
This reverts commit 04e39ce3fddaaec41d9c7babcca55133d7e49969 due to test
breakage.
Commit: b8271ec8b3a19e4b7ba0a6c10af927e601380be8
https://github.com/llvm/llvm-project/commit/b8271ec8b3a19e4b7ba0a6c10af927e601380be8
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/test/HLFIR/order_assignments/forall-pointer-assignment-scheduling.f90
Log Message:
-----------
[flang] accept character type in fir::changeTypeShape (#131892)
There is no reason for character element type to be forbidden in this
helper.
The assert was firing in character pointer assignment in FORALL after
#130772 added a usage of this helper.
Commit: f3f7f08ecaf0889b16bbe11fd6c9d38586979b1e
https://github.com/llvm/llvm-project/commit/f3f7f08ecaf0889b16bbe11fd6c9d38586979b1e
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] Fix Wsign-compare warning (NFC) (#131948)
llvm-project/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp:4805:57:
warning: comparison of integer expressions of different signedness:
‘int’ and ‘std::size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
[](const auto &P) { return P.value() % 2 != P.index() % 2; }))
~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
Commit: 72240fae4a2c305432b30998cb1d43bebefcad8a
https://github.com/llvm/llvm-project/commit/72240fae4a2c305432b30998cb1d43bebefcad8a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/select-codesize.ll
R llvm/test/Analysis/CostModel/X86/select-latency.ll
R llvm/test/Analysis/CostModel/X86/select-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/select.ll
Log Message:
-----------
[CostModel][X86] merge select costs tests using -cost-kind=all (#131865)
Commit: 0f2fb2b5c5c5052cb18a4b2c3330d43286f95ad2
https://github.com/llvm/llvm-project/commit/0f2fb2b5c5c5052cb18a4b2c3330d43286f95ad2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/mul-codesize.ll
R llvm/test/Analysis/CostModel/X86/mul-latency.ll
R llvm/test/Analysis/CostModel/X86/mul-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/mul.ll
M llvm/test/Analysis/CostModel/X86/mul32.ll
M llvm/test/Analysis/CostModel/X86/mul64.ll
Log Message:
-----------
[CostModel][X86] merge integer multiply costs tests using -cost-kind=all (#131864)
Commit: 1f844952558b041ff1b4c27eed7b81c15841ee84
https://github.com/llvm/llvm-project/commit/1f844952558b041ff1b4c27eed7b81c15841ee84
Author: Diana Picus <Diana-Magda.Picus at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/unittests/Target/AMDGPU/AMDGPUUnitTests.cpp
M llvm/unittests/Target/AMDGPU/CMakeLists.txt
Log Message:
-----------
[AMDGPU] Update target helpers & GCNSchedStrategy for dynamic VGPRs (#130047)
In dynamic VGPR mode, we can allocate up to 8 blocks of either 16 or 32
VGPRs (based on a chip-wide setting which we can model with a Subtarget
feature). Update some of the subtarget helpers to reflect this.
In particular:
- getVGPRAllocGranule is set to the block size
- getAddresableNumVGPR will limit itself to 8 * size of a block
We also try to be more careful about how many VGPR blocks we allocate.
Therefore, when deciding if we should revert scheduling after a given
stage, we check that we haven't increased the number of VGPR blocks that
need to be allocated.
---------
Co-authored-by: Jannik Silvanus <jannik.silvanus at amd.com>
Commit: 434ac4612f2b43a5b7f1a8e3b5310e8d129360e6
https://github.com/llvm/llvm-project/commit/434ac4612f2b43a5b7f1a8e3b5310e8d129360e6
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
A clang/test/Modules/diag-undefined-template.cpp
Log Message:
-----------
Improve the -Wundefined-func-template diagnostic note for invisible template functions (#129031)
See discussion in https://github.com/llvm/llvm-project/issues/125071.
Makes the note clearer for the unreachable case:
Before:
```
./hoge.h:5:12: warning: instantiation of function 'x<int>' required here, but no definition is available [-Wundefined-func-template]
5 | void f() { x<int>(); }
| ^
./shared_ptr2.h:4:6: note: forward declaration of template entity is here
4 | void x() { T t; (void)t; }
| ^
./hoge.h:5:12: note: add an explicit instantiation declaration to suppress this warning if 'x<int>' is explicitly instantiated in another translation unit
5 | void f() { x<int>(); }
|
```
After:
```
./hoge.h:5:12: warning: instantiation of function 'x<int>' required here, but no definition is available [-Wundefined-func-template]
5 | void f() { x<int>(); }
| ^
./shared_ptr2.h:4:6: note: declaration of template entity is unreachable here
4 | void x() { T t; (void)t; }
| ^
1 warning generated.
```
Commit: 9762b8e1757601a719d926f7df77c207617adfdd
https://github.com/llvm/llvm-project/commit/9762b8e1757601a719d926f7df77c207617adfdd
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/docs/analyzer/checkers.rst
Log Message:
-----------
[NFC][analyzer] Document the VirtualCall checkers (#131861)
This commit documents `cplusplus.PureVirtualCall` (which was previously
completely undocumented) and improves the documentation of
`optin.cplusplus.VirtualCall` (which was very barebones).
Note that in this documentation I do not mention the checker options of
`optin.cplusplus.VirtualCall`, because `ShowFixIts` is apparently in an
unfinished alpha state (since 2019 when it was added by commit
6cee434ed10ead6b7416ca5ee9592b2b207eeb0f) and `PureOnly` is a deprecated
option that I'm going to remove very soon.
Commit: 61b0bf5e01589182c2447e9a978c34a4d7cef5f3
https://github.com/llvm/llvm-project/commit/61b0bf5e01589182c2447e9a978c34a4d7cef5f3
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/fshl-codesize.ll
R llvm/test/Analysis/CostModel/X86/fshl-latency.ll
R llvm/test/Analysis/CostModel/X86/fshl-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/fshl.ll
R llvm/test/Analysis/CostModel/X86/fshr-codesize.ll
R llvm/test/Analysis/CostModel/X86/fshr-latency.ll
R llvm/test/Analysis/CostModel/X86/fshr-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/fshr.ll
Log Message:
-----------
[CostModel][X86] merge funnel shifts costs tests using -cost-kind=all (#131867)
Commit: 96ad7ef77655362dd818fda4685c14776fe5dbf3
https://github.com/llvm/llvm-project/commit/96ad7ef77655362dd818fda4685c14776fe5dbf3
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/docs/analyzer/checkers.rst
Log Message:
-----------
[NFC][analyzer] Correct example code in VirtualCall docs (#131992)
Oops, I noticed these just after merging my commit
9762b8e1757601a719d926f7df77c207617adfdd.
Commit: 7cd9b3fcec87b02bdbc9308dbff9afa0f55e96d5
https://github.com/llvm/llvm-project/commit/7cd9b3fcec87b02bdbc9308dbff9afa0f55e96d5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/trunc-codesize.ll
R llvm/test/Analysis/CostModel/X86/trunc-latency.ll
R llvm/test/Analysis/CostModel/X86/trunc-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/trunc.ll
Log Message:
-----------
[CostModel][X86] merge truncation costs tests using -cost-kind=all (#131872)
Commit: 841d6c45f36084e1023803647b8c48158911e475
https://github.com/llvm/llvm-project/commit/841d6c45f36084e1023803647b8c48158911e475
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/fcmp-codesize.ll
R llvm/test/Analysis/CostModel/X86/fcmp-latency.ll
R llvm/test/Analysis/CostModel/X86/fcmp-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/fcmp.ll
Log Message:
-----------
[CostModel][X86] merge fp comparison costs tests using -cost-kind=all (#131874)
Commit: e9daafdd5ec76420abe8666a86d19ba330567107
https://github.com/llvm/llvm-project/commit/e9daafdd5ec76420abe8666a86d19ba330567107
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/icmp-codesize.ll
R llvm/test/Analysis/CostModel/X86/icmp-latency.ll
R llvm/test/Analysis/CostModel/X86/icmp-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/icmp.ll
M llvm/test/Analysis/CostModel/X86/icmp0.ll
Log Message:
-----------
[CostModel][X86] merge integer comparison costs tests using -cost-kind=all (#131875)
Commit: 6ca1424fc1db255627f27eb6a50c7a837e3fecb3
https://github.com/llvm/llvm-project/commit/6ca1424fc1db255627f27eb6a50c7a837e3fecb3
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/fmaxnum-codesize.ll
R llvm/test/Analysis/CostModel/X86/fmaxnum-latency.ll
R llvm/test/Analysis/CostModel/X86/fmaxnum-size-latency.ll
M llvm/test/Analysis/CostModel/X86/fmaxnum.ll
R llvm/test/Analysis/CostModel/X86/fminnum-codesize.ll
R llvm/test/Analysis/CostModel/X86/fminnum-latency.ll
R llvm/test/Analysis/CostModel/X86/fminnum-size-latency.ll
M llvm/test/Analysis/CostModel/X86/fminnum.ll
Log Message:
-----------
[CostModel][X86] merge fmaxnum/fminnum costs tests using -cost-kind=all (#131922)
Commit: 75ab43b70eef125dbdf1586143fad88a2a61170e
https://github.com/llvm/llvm-project/commit/75ab43b70eef125dbdf1586143fad88a2a61170e
Author: Andrey Timonin <timonina1909 at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
Log Message:
-----------
[mlir][emitc][NFC] Eliminate the extra newline printout during emitc.switch emission (#129257)
Before the output was:
```c++
void emitc_switch_ptrdiff_t() {
ptrdiff_t v1 = 1;
switch (v1) {
...
}
return;
}
```
After:
```c++
void emitc_switch_ptrdiff_t() {
ptrdiff_t v1 = 1;
switch (v1) {
...
}
return;
}
```
Commit: e7c6e3557b372afe6e78c025addfec276a10b49d
https://github.com/llvm/llvm-project/commit/e7c6e3557b372afe6e78c025addfec276a10b49d
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
A flang/test/Lower/OpenMP/threadprivate-common-block-pointer.f90
Log Message:
-----------
[flang][OpenMP] Fix threadprivate pointer variable in common block (#131888)
Fixes #112538
The problem was that the host associated symbol for the threadprivate
variable doesn't have all of the symbol attributes (e.g. POINTER). This
caused the lowering code to generate the wrong type, eventually hitting
an assertion.
Commit: 1d7c4609445cb0a8330ee06b836d3c873d7f12bb
https://github.com/llvm/llvm-project/commit/1d7c4609445cb0a8330ee06b836d3c873d7f12bb
Author: Alex Bradbury <asb at igalia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
Log Message:
-----------
[RISCV] Set isTrap for EBREAK and {C_,}UNIMP (#131636)
This is done for completeness. The property isn't used in upstream
llvm/, although it is queried in BOLT in MCPlusBuilder.cpp.
Commit: 541ab52ca9b0a3163b42665bf469a4499a7aea44
https://github.com/llvm/llvm-project/commit/541ab52ca9b0a3163b42665bf469a4499a7aea44
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/test/Modules/eagerly-load-cxx-named-modules.cppm
Log Message:
-----------
[clang] Add a missing space to the -Weager-load-cxx-named-modules diagnostic message. (#131987)
Commit: ee8a759bfb4772dea7459f4ecbd83bc2be5ee68b
https://github.com/llvm/llvm-project/commit/ee8a759bfb4772dea7459f4ecbd83bc2be5ee68b
Author: swatheesh-mcw <swatheesh.muralidharan at multicorewareinc.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/openmp-modifiers.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/openmp-modifiers.cpp
A flang/test/Lower/OpenMP/Todo/inteorp-construct.f90
A flang/test/Parser/OpenMP/interop-construct.f90
A flang/test/Semantics/OpenMP/interop-construct.f90
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[flang][openmp] Adds Parser and Semantic Support for Interop Construct, and Init and Use Clauses. (#120584)
Adds Parser and Semantic Support for the below construct and clauses:
- Interop Construct
- Init Clause
- Use Clause
Note:
The other clauses supported by Interop Construct such as Destroy, Use,
Depend and Device are added already.
Commit: 6dba5f659567af21a01224845077a269380d8e3a
https://github.com/llvm/llvm-project/commit/6dba5f659567af21a01224845077a269380d8e3a
Author: Elvis Wang <elvis.wang at sifive.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
Log Message:
-----------
[TTI] Align optional FMFs in getExtendedReductionCost() to getArithmeticReductionCost(). (#131968)
In the implementation of the getExtendedReductionCost(), it ofter calls
getArithmeticReductionCost() with FMFs. But we shouldn't call
getArithmeticReductionCost() with FMFs for non-floating-point reductions
which will return the wrong cost.
This patch makes FMFs in getExtendedReductionCost() optional and align
to the getArithmeticReductionCost(). So the TTI will return the correct
cost for non-FP extended-reductions query without FMFs.
This patch is not quite NFC but it's hard to test from the CostModel
side.
Split from #113903.
Commit: b7eb01b3a15d59be58319705c916ddf6859d0aab
https://github.com/llvm/llvm-project/commit/b7eb01b3a15d59be58319705c916ddf6859d0aab
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
Log Message:
-----------
[NFC][OpenMP][MLIR] Refactor code related to collecting privatizer info into a shared util (#131582)
Moves code needed to collect info about delayed privatizers into a
shared util instread of repeating the same patter across all relevant
constructs.
Commit: 96b112fb613e216a198ae2e956a367742c838eed
https://github.com/llvm/llvm-project/commit/96b112fb613e216a198ae2e956a367742c838eed
Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/openmp-modifiers.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/openmp-modifiers.cpp
R flang/test/Lower/OpenMP/Todo/inteorp-construct.f90
R flang/test/Parser/OpenMP/interop-construct.f90
R flang/test/Semantics/OpenMP/interop-construct.f90
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
Revert "[flang][openmp] Adds Parser and Semantic Support for Interop Construct, and Init and Use Clauses." (#132005)
Reverts llvm/llvm-project#120584
Reverting due to CI failure
https://lab.llvm.org/buildbot/#/builders/157/builds/22946
Commit: 6db2594c48b0aa5b13f5ac1664bcc42e836163c9
https://github.com/llvm/llvm-project/commit/6db2594c48b0aa5b13f5ac1664bcc42e836163c9
Author: Alex Bradbury <asb at igalia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
M llvm/test/Transforms/PreISelIntrinsicLowering/X86/memset-pattern.ll
Log Message:
-----------
[PreISelIntrinsicLowering] Zext/trunc count parameter as necessary for memset_pattern16 emission (#129239)
This patch cleans up the handling of the count parameter in general,
though was initially motivated by a compiler crash upon a memset.pattern
with a narrow count causing a compiler crash due to different types for
CreateMul when converting the count to the number of bytes.
The logic used to name globals means there is some minor renaming churn
in the output to
test/Transforms/PreISelIntrinsicLowering/X86/memset-pattern.ll
irrelevant to the newly added tests (that would crash before).
Commit: 571e4de02ee527ef6d0399008fb57440e51c5d22
https://github.com/llvm/llvm-project/commit/571e4de02ee527ef6d0399008fb57440e51c5d22
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lldb/include/lldb/Symbol/UnwindPlan.h
M lldb/source/Plugins/ObjectFile/PECOFF/PECallFrameInfo.cpp
M lldb/source/Plugins/Platform/Linux/PlatformLinux.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp
M lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp
M lldb/source/Symbol/ArmUnwindInfo.cpp
M lldb/source/Symbol/CompactUnwindInfo.cpp
M lldb/source/Symbol/DWARFCallFrameInfo.cpp
M lldb/unittests/UnwindAssembly/x86/Testx86AssemblyInspectionEngine.cpp
Log Message:
-----------
[lldb] Use UnwindPlan::Row as values (#131150)
In most places, the rows are copied anyway (because they are generated
by cumulating modifications) immediately after adding them to the unwind
plans. In others, they can be moved into the unwind plan. This lets us
remove some backflip copies and make `const UnwindPlan` actually mean
something.
I've split this patch into two (and temporarily left both APIs) as this
patch was getting a bit big. This patch covers all the interesting
cases. Part two all about converting "architecture default" unwind plans
from ABI and InstructionEmulation plugins.
Commit: 4686b8a6630a9e6c9a3736d624ce94a5030ce10c
https://github.com/llvm/llvm-project/commit/4686b8a6630a9e6c9a3736d624ce94a5030ce10c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
R llvm/test/Analysis/CostModel/X86/masked-intrinsic-codesize.ll
M llvm/test/Analysis/CostModel/X86/masked-intrinsic-cost-inseltpoison.ll
M llvm/test/Analysis/CostModel/X86/masked-intrinsic-cost.ll
R llvm/test/Analysis/CostModel/X86/masked-intrinsic-latency.ll
R llvm/test/Analysis/CostModel/X86/masked-intrinsic-sizelatency.ll
Log Message:
-----------
[CostModel][X86] merge masked intrinsics costs tests using -cost-kind=all (#131999)
Commit: 945ce9642b5d02386abe2f58b6966ca9efc5abf1
https://github.com/llvm/llvm-project/commit/945ce9642b5d02386abe2f58b6966ca9efc5abf1
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/Analysis/CostModel/X86/reduce-add.ll
M llvm/test/Analysis/CostModel/X86/reduce-and.ll
M llvm/test/Analysis/CostModel/X86/reduce-fadd.ll
M llvm/test/Analysis/CostModel/X86/reduce-fmax.ll
M llvm/test/Analysis/CostModel/X86/reduce-fmin.ll
M llvm/test/Analysis/CostModel/X86/reduce-fmul.ll
M llvm/test/Analysis/CostModel/X86/reduce-mul.ll
M llvm/test/Analysis/CostModel/X86/reduce-or.ll
M llvm/test/Analysis/CostModel/X86/reduce-smax.ll
M llvm/test/Analysis/CostModel/X86/reduce-smin.ll
M llvm/test/Analysis/CostModel/X86/reduce-umax.ll
M llvm/test/Analysis/CostModel/X86/reduce-umin.ll
M llvm/test/Analysis/CostModel/X86/reduce-xor.ll
M llvm/test/Analysis/CostModel/X86/reduction.ll
Log Message:
-----------
[CostModel][X86] check all reduction cost kinds using -cost-kind=all (#132000)
Commit: 5b6b4fdb4b07e1d0d9a647f40a30d47f26178e09
https://github.com/llvm/llvm-project/commit/5b6b4fdb4b07e1d0d9a647f40a30d47f26178e09
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
M llvm/test/CodeGen/AMDGPU/freeze.ll
Log Message:
-----------
DAG: Fix promote of half freeze (#131844)
Commit: e0db41615bd43c874d3b27ea5fe40a5940161f74
https://github.com/llvm/llvm-project/commit/e0db41615bd43c874d3b27ea5fe40a5940161f74
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/test/AST/ByteCode/cxx20.cpp
Log Message:
-----------
[clang][bytecode] Fix initializing array struct fields from an APValue (#131983)
We need to recurse once more here and move the array case into the
bigger if chain.
Commit: 449cdfacc07bd365d49a637196ce8f8067cf845c
https://github.com/llvm/llvm-project/commit/449cdfacc07bd365d49a637196ce8f8067cf845c
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang-tools-extra/clangd/Preamble.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/lib/Lex/Lexer.cpp
M clang/test/C/C2y/n3411.c
A clang/test/CXX/drs/cwg787.cpp
R clang/test/Lexer/newline-eof-c++98-compat.cpp
M clang/test/Lexer/newline-eof.c
Log Message:
-----------
Suppress pedantic diagnostic for a file not ending in EOL (#131794)
WG14 added N3411 to the list of papers which apply to older versions of
C in C2y, and WG21 adopted CWG787 as a Defect Report in C++11. So we no
longer should be issuing a pedantic diagnostic about a file which does
not end with a newline character.
We do, however, continue to support -Wnewline-eof as an opt-in
diagnostic.
Commit: 6c773a87013cf82b68ba9be4672e3908a9ab6010
https://github.com/llvm/llvm-project/commit/6c773a87013cf82b68ba9be4672e3908a9ab6010
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/SVEInstrFormats.td
A llvm/test/CodeGen/AArch64/sve-bf16-int-converts.ll
Log Message:
-----------
[LLVM][SVE] Implement isel for bfloat fptoi and itofp operations. (#129713)
NOTE: This PR only considers scalable vectors because SVE VLS does not
support bfloat (see useSVEForFixedLengthVectorVT()).
Commit: 3adf2b00aef80fa313faf668a50eae4cf41334a5
https://github.com/llvm/llvm-project/commit/3adf2b00aef80fa313faf668a50eae4cf41334a5
Author: Aleksandr Korepanov <alexander.korepanov at jetbrains.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/unittests/DebugInfo/PDB/PDBVariantTest.cpp
Log Message:
-----------
[LLVM][PDB][Test] Fix the build (#131984)
Hello! Sorry, it seems I broke the build in
https://github.com/llvm/llvm-project/pull/131598
Build:
https://lab.llvm.org/buildbot/#/builders/145/builds/5745
This is a compilation fix, please take a look.
Commit: 3c554deaaaa9aaa4f1aebc0d19f56424a32fe5e3
https://github.com/llvm/llvm-project/commit/3c554deaaaa9aaa4f1aebc0d19f56424a32fe5e3
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/reg-usage.ll
Log Message:
-----------
[LV] Add reg-usage test with values only used by llvm.assume.
Add test checking we are not counting registers that are only used by
ephemeral users, like llvm.assume.
Commit: 4ddc8df6ca1c9c1a1f03f03baefba5d1f6e2e78b
https://github.com/llvm/llvm-project/commit/4ddc8df6ca1c9c1a1f03f03baefba5d1f6e2e78b
Author: Nashe Mncube <nashe.mncube at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
A llvm/test/Analysis/CostModel/ARM/muls-in-smlal-patterns.ll
A llvm/test/Analysis/CostModel/ARM/muls-in-umull-patterns.ll
Log Message:
-----------
[CostModel][ARM]Adjust cost of muls in (U/S)MLAL and patterns (#122713)
PR #117350 made changes to the SLP vectorizer which introduced a
regression on some ARM benchmarks. Investigation narrowed it down to
suboptimal codegen for benchmarks that previously only used scalar (U/S)MLAL
instructions. The linked change meant the SLPVectorizer thought that
these could be vectorized. This change makes the cost of muls in
(U/S)MLAL patterns slightly cheaper to make sure scalar instructions are
preferred in these cases over SLP vectorization on targets supporting DSP
Commit: 861efd4b3f93d30d353f0a6eea249fbdac1778a0
https://github.com/llvm/llvm-project/commit/861efd4b3f93d30d353f0a6eea249fbdac1778a0
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueWatchpoints.py
Log Message:
-----------
[lldb] Skip reverse continue tests on x86_64-darwin
Tests are failing because some registers (at least `ds`) are unreadable.
Commit: 72c3c30452d340d1a90cd3e7efe685ee188003c7
https://github.com/llvm/llvm-project/commit/72c3c30452d340d1a90cd3e7efe685ee188003c7
Author: Diana Picus <Diana-Magda.Picus at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/SIDefines.h
M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
M llvm/lib/Target/AMDGPU/SIFrameLowering.h
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
A llvm/test/CodeGen/AMDGPU/dynamic-vgpr-reserve-stack-for-cwsr.ll
A llvm/test/CodeGen/AMDGPU/machine-function-info-cwsr.ll
M llvm/test/CodeGen/AMDGPU/pal-metadata-3.0.ll
M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll
Log Message:
-----------
[AMDGPU] Allocate scratch space for dVGPRs for CWSR (#130055)
The CWSR trap handler needs to save and restore the VGPRs. When dynamic
VGPRs are in use, the fixed function hardware will only allocate enough
space for one VGPR block. The rest will have to be stored in scratch, at
offset 0.
This patch allocates the necessary space by:
- generating a prologue that checks at runtime if we're on a compute
queue (since CWSR only works on compute queues); for this we will have
to check the ME_ID bits of the ID_HW_ID2 register - if that is non-zero,
we can assume we're on a compute queue and initialize the SP and FP with
enough room for the dynamic VGPRs
- forcing all compute entry functions to use a FP so they can access
their locals/spills correctly (this isn't ideal but it's the quickest to
implement)
Note that at the moment we allocate enough space for the theoretical
maximum number of VGPRs that can be allocated dynamically (for blocks of
16 registers, this will be 128, of which we subtract the first 16, which
are already allocated by the fixed function hardware). Future patches
may decide to allocate less if they can prove the shader never allocates
that many blocks.
Also note that this should not affect any reported stack sizes (e.g. PAL
backend_stack_size etc).
Commit: 3eddb992d08b30832d2cc0908483f10fe133935a
https://github.com/llvm/llvm-project/commit/3eddb992d08b30832d2cc0908483f10fe133935a
Author: Emma Pilkington <emma.pilkington95 at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
A llvm/test/CodeGen/AMDGPU/dbg-value-starts-sched-region.mir
Log Message:
-----------
[AMDGPU] Fix a crash by skipping DBG instrs at start of sched region (#131167)
Fixes SWDEV-514946
Commit: 7e3fe884ac5ffd2a32e8682459146494086ecc0a
https://github.com/llvm/llvm-project/commit/7e3fe884ac5ffd2a32e8682459146494086ecc0a
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/sve-ptest-removal-cmpeq.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-rdffr.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilege.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilegt.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilehi.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilehs.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilele.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilelo.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilels.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilelt.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilerw.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilewr.mir
Log Message:
-----------
[LLVM] Regenerate CHECK lines for CodeGen/AArch64/sve-ptest-removal-*.mir
Commit: 3f4b2f12a1e3e87e4bfb86937cc1ccdd4d38dcf5
https://github.com/llvm/llvm-project/commit/3f4b2f12a1e3e87e4bfb86937cc1ccdd4d38dcf5
Author: Nicholas Guy <nicholas.guy at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
A llvm/test/CodeGen/AArch64/complex-deinterleaving-unrolled-cdot.ll
Log Message:
-----------
[llvm] Fix crash when complex deinterleaving operates on an unrolled loop (#129735)
When attempting to perform complex deinterleaving on an unrolled loop
containing a reduction, the complex deinterleaving pass would fail to
accommodate the wider types when accumulating the unrolled paths.
Instead of trying to alter the incoming IR to fit expectations, the pass
should instead decide against processing any reduction that results in a
non-complex or non-vector value.
Commit: 29925b7044517bcd1b3f76333a598092427c3636
https://github.com/llvm/llvm-project/commit/29925b7044517bcd1b3f76333a598092427c3636
Author: Nashe Mncube <nashe.mncube at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
Log Message:
-----------
[NFC][CostModel][ARM] Remove redundant lambda capture (#132018)
Buildbot failures were caused by PR #122713. This was due to unused captures in a lambda function.
Commit: 0aba8334f92b98cb2bf791565179e8dd63dce125
https://github.com/llvm/llvm-project/commit/0aba8334f92b98cb2bf791565179e8dd63dce125
Author: Nathan Gauër <brioche at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
A llvm/test/CodeGen/SPIRV/pointers/load-struct.ll
Log Message:
-----------
[SPIR-V] Handle struct member loading from ptrcast (#130089)
Adds support for loading the first element of an aggregate from a GEP
instruction & load to the member type.
Commit: 9654df3f5e8f898341717ac25097dba6f667c356
https://github.com/llvm/llvm-project/commit/9654df3f5e8f898341717ac25097dba6f667c356
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/include/llvm/ADT/StringSet.h
M llvm/unittests/ADT/StringSetTest.cpp
Log Message:
-----------
[ADT] Add StringSet::insert_range (#131957)
This pach adds StringSet::insert_range for consistency with
DenseSet::insert_range and std::set::insert_range from C++23.
In the unit test, I'm using contains instead of
testing::UnorderedElementsAre because the latter doesn't seem to work
with char *.
Commit: c3e334fc0d9dc12b25cde5839d993f70f56e5e76
https://github.com/llvm/llvm-project/commit/c3e334fc0d9dc12b25cde5839d993f70f56e5e76
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSetWavePriority.cpp
Log Message:
-----------
[AMDGPU] Avoid repeated hash lookups (NFC) (#131958)
Commit: 099a11f4ab02d13fba6e5c36fdb89881075b6216
https://github.com/llvm/llvm-project/commit/099a11f4ab02d13fba6e5c36fdb89881075b6216
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
Log Message:
-----------
[ExecutionEngine] Avoid repeated hash lookups (NFC) (#131959)
Commit: f97a852d69bd0434776e44136013dfb045e253ef
https://github.com/llvm/llvm-project/commit/f97a852d69bd0434776e44136013dfb045e253ef
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/IPO/IROutliner.cpp
Log Message:
-----------
[IPO] Avoid repeated hash lookups (NFC) (#131960)
Commit: fc278e406ec0204437e26f087a5a71d74727924e
https://github.com/llvm/llvm-project/commit/fc278e406ec0204437e26f087a5a71d74727924e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
Log Message:
-----------
[Scalar] Avoid repeated hash lookups (NFC) (#131961)
Commit: 9705010b5e1fc878a9107d844dcb641499d8c73f
https://github.com/llvm/llvm-project/commit/9705010b5e1fc878a9107d844dcb641499d8c73f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[Vectorize] Avoid repeated hash lookups (NFC) (#131962)
Commit: 364e60b6e41d49bc08be21cc279bba57ddabf679
https://github.com/llvm/llvm-project/commit/364e60b6e41d49bc08be21cc279bba57ddabf679
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86DiscriminateMemOps.cpp
Log Message:
-----------
[X86] Avoid repeated hash lookups (NFC) (#131963)
Commit: 0cb9c5045b556c668e6d7b47f6a90032d2aa0f21
https://github.com/llvm/llvm-project/commit/0cb9c5045b556c668e6d7b47f6a90032d2aa0f21
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/Analysis/CostModel/X86/fptosi.ll
M llvm/test/Analysis/CostModel/X86/fptoui.ll
M llvm/test/Analysis/CostModel/X86/sitofp.ll
M llvm/test/Analysis/CostModel/X86/uitofp.ll
Log Message:
-----------
[CostModel][X86] check fp<->int conversion cost kinds using -cost-kind=all
Commit: baef6fadbf0e4ddac33c6a8a6275208435f52965
https://github.com/llvm/llvm-project/commit/baef6fadbf0e4ddac33c6a8a6275208435f52965
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Driver/Options.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/ParsedAttr.h
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/ParseTemplate.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/ParsedAttr.cpp
M clang/test/Parser/parser_overflow.c
Log Message:
-----------
[Clang] Increase the default expression nesting limit (#132021)
This iterates on #104717 (which we had to revert)
In a bid to increase our chances of success, we try to avoid blowing up
the stack by
- Using `runWithSufficientStackSpace` in ParseCompoundStatement
- Reducing the size of `StmtVector` a bit
- Reducing the size of `DeclsInGroup` a bit
- Removing a few `ParsedAttributes` from the stacks in places where they
are not strictly necessary. `ParsedAttributes` is a _huge_ object
On a 64 bits system, the following stack size reductions are observed
```
ParseStatementOrDeclarationAfterAttributes: 344 -> 264
ParseStatementOrDeclaration: 520 -> 376
ParseCompoundStatementBody: 1080 -> 1016
ParseDeclaration: 264 -> 120
```
Fixes #94728
Commit: be0a3b223a10e0a3e588b1d6002581982968f0f4
https://github.com/llvm/llvm-project/commit/be0a3b223a10e0a3e588b1d6002581982968f0f4
Author: Alex Bradbury <asb at igalia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/Intrinsics.td
M llvm/lib/IR/Verifier.cpp
A llvm/test/Verifier/memset-pattern-unsized.ll
Log Message:
-----------
[IR] Allow llvm.experimental.memset.pattern to take any sized type as the pattern argument (#132026)
I initially thought starting with a more narrow definition and later
expanding would make more sense. But as pointed out in review for PR
#129220, this restriction is generating additional unnecessary work.
This patch alters the intrinsic to accept patterns of any type. Future
patches will update LoopIdiomRecognize and PreISelIntrinsicLowering to
take advantage of this. The verifier will complain if an unsized type is
used. I've additionally taken the opportunity to remove a comment from
the LangRef about some bit widths potentially not being supported by the
target. I don't think this is any more true than it is for arbitrary
width loads/stores which don't carry a similar warning that I can see.
A verifier check ensures that only sized types are used for the pattern.
Commit: ade22fc1d9616c95bd1aa4ea658a21ddb073b73c
https://github.com/llvm/llvm-project/commit/ade22fc1d9616c95bd1aa4ea658a21ddb073b73c
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCInstrVSX.td
M llvm/test/CodeGen/PowerPC/f128-conv.ll
M llvm/test/CodeGen/PowerPC/fp128-libcalls.ll
Log Message:
-----------
[PowerPC] Support conversion between f16 and f128 (#130158)
Enables conversion between f16 and f128.
Expanding on pre-Power9 targets and using HW instructions on Power9.
Fixes https://github.com/llvm/llvm-project/issues/92866
Commandeer of: https://github.com/llvm/llvm-project/pull/97677
---------
Co-authored-by: esmeyi <esme.yi at ibm.com>
Commit: 20feca47c1e2fdd90f3f7007a492e4ec18c71c08
https://github.com/llvm/llvm-project/commit/20feca47c1e2fdd90f3f7007a492e4ec18c71c08
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/lib/Semantics/check-cuda.cpp
M flang/module/ieee_arithmetic.f90
M flang/test/Semantics/cuf09.cuf
Log Message:
-----------
[flang][cuda] Allow ieee_arithmetic on the device (#131930)
- Allow ieee_arithmetic on the device
- Add ignore_tkr(d) to ieee_is_finite
Commit: 2d090287712a650734397ef4642c7888fe239281
https://github.com/llvm/llvm-project/commit/2d090287712a650734397ef4642c7888fe239281
Author: Connector Switch <c8ef at outlook.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libc/test/src/search/lsearch_test.cpp
Log Message:
-----------
[libc] Fix `size_t` and `unsigned long` mismatch on riscv32 in test. (#132028)
Fix regression:
https://github.com/llvm/llvm-project/pull/131431#issuecomment-2735029529
Commit: 67a01131a8d70fcd06c6bd9cea30a8a6262c8c94
https://github.com/llvm/llvm-project/commit/67a01131a8d70fcd06c6bd9cea30a8a6262c8c94
Author: Iris <0.0 at owo.li>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libc/src/sched/linux/sched_getcpucount.cpp
Log Message:
-----------
[libc] Replace `__builtin_popcountl` with `cpp::popcount` in `sched_getcpucount` (#131952)
Closes #128781.
Commit: 38e8dff84ba1e2cf0260712d21dd429d74471d08
https://github.com/llvm/llvm-project/commit/38e8dff84ba1e2cf0260712d21dd429d74471d08
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Analysis/AliasAnalysis.cpp
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/test/Analysis/BasicAA/call.ll
Log Message:
-----------
[AA][BasicAA] Move more call logic to BasicAA (#131144)
Currently, the handling for calls is split between AA and BasicAA in an
awkward way. BasicAA does argument alias analysis for non-escaping
objects (but without considering MemoryEffects), while AA handles the
generic case using MemoryEffects. However, fundamentally, both of these
are really trying to do the same thing.
The new merged logic first tries to remove the OtherMR component of the
memory effects, which includes accesses to escaped memory. If a
function-local object does not escape, OtherMR can be set to NoModRef.
Then we perform the argument scan in basically the same way as AA
previously did. However, we also need to look at the operand bundles. To
support that, I've adjusted getArgModRefInfo to accept operand bundle
arguments.
Commit: 4322d03e4acce4eb0ba7c274d38015061e34a9c1
https://github.com/llvm/llvm-project/commit/4322d03e4acce4eb0ba7c274d38015061e34a9c1
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lldb/bindings/headers.swig
Log Message:
-----------
[lldb] Avoid having to list all the headers in headers.swig (#131934)
When adding SBLock, I realized you always have to add a new header in
two places: LLDB.h and headers.swig.
I can't think of a reason the latter can't use the umbrella header and
avoid the duplication.
Commit: b3d280b887780c04e89dc0214ac800d37bbb4009
https://github.com/llvm/llvm-project/commit/b3d280b887780c04e89dc0214ac800d37bbb4009
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/gfni-lzcnt.ll
M llvm/test/CodeGen/X86/vector-lzcnt-512.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi.ll
Log Message:
-----------
[X86] fold AND(X,SEXT(SETCC())) -> SELECT(SETCC(),X,0) to support AVX512 predicated {k}{z} masks (#131788)
We already do this for the ANDNP(SEXT(SETCC()),X) equivalent pattern.
Fixes #109272
Commit: 2b8f887915020431112c35397368edd34b313f9a
https://github.com/llvm/llvm-project/commit/2b8f887915020431112c35397368edd34b313f9a
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Ptr/IR/CMakeLists.txt
A mlir/include/mlir/Dialect/Ptr/IR/MemorySpaceInterfaces.h
A mlir/include/mlir/Dialect/Ptr/IR/MemorySpaceInterfaces.td
M mlir/include/mlir/Dialect/Ptr/IR/PtrAttrs.h
M mlir/include/mlir/Dialect/Ptr/IR/PtrDialect.td
A mlir/include/mlir/Dialect/Ptr/IR/PtrEnums.td
M mlir/include/mlir/Dialect/Ptr/IR/PtrOps.td
M mlir/include/mlir/Dialect/Ptr/IR/PtrTypes.h
M mlir/lib/Dialect/Ptr/IR/CMakeLists.txt
M mlir/lib/Dialect/Ptr/IR/PtrDialect.cpp
M mlir/lib/Dialect/Ptr/IR/PtrTypes.cpp
M mlir/test/Dialect/Ptr/layout.mlir
M mlir/test/Dialect/Ptr/types.mlir
M mlir/test/lib/Dialect/Test/CMakeLists.txt
M mlir/test/lib/Dialect/Test/TestAttrDefs.td
M mlir/test/lib/Dialect/Test/TestAttributes.cpp
M mlir/test/lib/Dialect/Test/TestAttributes.h
Log Message:
-----------
[mlir][Ptr] Add the `MemorySpaceAttrInterface` interface and dependencies. (#86870)
This patch introduces the `MemorySpaceAttrInterface` interface. This
interface is responsible for handling the semantics of `ptr` operations.
For example, this interface can be used to create read-only memory
spaces, making any other operation other than a load a verification
error, see `TestConstMemorySpaceAttr` for a possible implementation of
this concept.
This patch also introduces Enum dependencies `AtomicOrdering`, and
`AtomicBinOp`, both enumerations are clones of the Enums with the same
name in the LLVM Dialect.
Also, see:
- [[RFC] `ptr` dialect & modularizing ptr ops in the LLVM
dialect](https://discourse.llvm.org/t/rfc-ptr-dialect-modularizing-ptr-ops-in-the-llvm-dialect/75142)
for rationale.
- https://github.com/llvm/llvm-project/pull/73057 for a prototype
implementation of the full change.
**Note: Ignore the first commit, that's being reviewed in
https://github.com/llvm/llvm-project/pull/86860 .**
Commit: 3bba268013680d7bf86a3aedbf0e91930362bda1
https://github.com/llvm/llvm-project/commit/3bba268013680d7bf86a3aedbf0e91930362bda1
Author: Ash Dobrescu <ash.dobrescu at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M bolt/lib/Rewrite/RewriteInstance.cpp
A bolt/test/AArch64/computed-goto.s
A bolt/test/Inputs/indirect_goto.c
R bolt/test/X86/Inputs/indirect_goto.c
R bolt/test/X86/indirect-goto-pie.test
M bolt/test/X86/indirect-goto.test
A bolt/test/indirect-goto-relocs.test
Log Message:
-----------
[BOLT] Support computed goto and allow map addrs inside functions (#120267)
Create entry points for addresses referenced by dynamic relocations and
allow getNewFunctionOrDataAddress to map addrs inside functions. By
adding addresses referenced by dynamic relocations as entry points. This
patch fixes an issue where bolt fails on code using computing goto's.
This also fixes a mapping issue with the bugfix from this PR:
https://github.com/llvm/llvm-project/pull/117766.
Commit: f536f715800658567ba619ad8a2b361d4d715fe9
https://github.com/llvm/llvm-project/commit/f536f715800658567ba619ad8a2b361d4d715fe9
Author: Luke Lau <luke at igalia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[LV] Split RecurrenceDescriptor into RecurKind + FastMathFlags in LoopUtils. NFC (#132014)
Split off from #131300, this splits up RecurrenceDescriptor arguments so
that arbitrary recurrence kinds may be used down the line.
Commit: 54977097567a55964505c965513a354926c0565b
https://github.com/llvm/llvm-project/commit/54977097567a55964505c965513a354926c0565b
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/www/cxx_dr_status.html
Log Message:
-----------
Update C++ DR status page
Commit: 1f152527e06dcad57f9af3ea6a0a4997da116706
https://github.com/llvm/llvm-project/commit/1f152527e06dcad57f9af3ea6a0a4997da116706
Author: Cassandra Beckley <cbeckley at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_GroupIndex.ll
Log Message:
-----------
[SPIR-V] Add support for HLSL SV_GroupIndex (#130670)
This PR lowers the `llvm.spv.flattened.thread.id.in.group` intrinsic as
a `LocalInvocationIndex` builtin variable.
Commit: 379a8d1a830f021fbc84e74ccbb316f2327d88c2
https://github.com/llvm/llvm-project/commit/379a8d1a830f021fbc84e74ccbb316f2327d88c2
Author: James Y Knight <jyknight at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
Fix bazel build for 8437b7f5. (#132046)
When using parse_headers validation, rpc_server.h fails to build, since
we don't expose any of the RPC deps in the Bazel build.
So at least for now, just exclude it.
Commit: 4f5ccf22fab7b83651511dd8eea6b60266b84bf2
https://github.com/llvm/llvm-project/commit/4f5ccf22fab7b83651511dd8eea6b60266b84bf2
Author: Mariusz Sikora <mariusz.sikora at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MIMGInstructions.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bvh8_intersect_ray.ll
M llvm/test/MC/AMDGPU/gfx12_asm_vimage.s
M llvm/test/MC/AMDGPU/gfx12_asm_vimage_alias.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vimage.txt
Log Message:
-----------
[AMDGPU] Support image_bvh8_intersect_ray instruction and intrinsic. (#130041)
Co-authored-by: Ivan Kosarev <ivan.kosarev at amd.com>
Commit: 11b869957232e6f5dfec5c88d636fe808e329d8d
https://github.com/llvm/llvm-project/commit/11b869957232e6f5dfec5c88d636fe808e329d8d
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/reg-usage.ll
M llvm/test/Transforms/LoopVectorize/LoongArch/reg-usage.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/reg-usage.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
Log Message:
-----------
[LV] Don't skip instrs with side-effects in reg pressure computation. (#126415)
calculateRegisterUsage adds end points for each user of an instruction
to Ends and ignores instructions not added to it, i.e. instructions with
no users.
This means things like stores aren't included, which in turn means
values that are only used in stores are also not included for
consideration. This means we underestimate the register usage in cases
where the only users are things like stores.
Update the code to don't skip instructions without users (i.e. not in
Ends) if they have side-effects.
PR: https://github.com/llvm/llvm-project/pull/126415
Commit: cd0a2a3f1bdaf8dc54d4a4d3c478d41345671e72
https://github.com/llvm/llvm-project/commit/cd0a2a3f1bdaf8dc54d4a4d3c478d41345671e72
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang-rt/lib/runtime/extensions.cpp
M flang/docs/Intrinsics.md
Log Message:
-----------
[flang] add QSORT extension intrinsic to the runtime (#132033)
Add support for legacy Fortran intrinsic QSORT from lib 3f.
This is a thin Fortran wrapper over libc qsort.
Commit: 58027fa989391451d7eaa21fe24c135bcad52e79
https://github.com/llvm/llvm-project/commit/58027fa989391451d7eaa21fe24c135bcad52e79
Author: David Peixotto <peix at meta.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lldb/test/API/iohandler/unicode/TestUnicode.py
Log Message:
-----------
[lldb] Require wide char support in unicode test (#131951)
The unicode test sends some unicode input to lldb through pexpect and
expects the output to be echoed back in an error message. This only
works correctly when editline was compiled with wide character support.
This commit modifies the test to require the necessary libedit
configuration.
Commit: 93b7c1b4b2b60720f05dddaa3cc119cab2cee079
https://github.com/llvm/llvm-project/commit/93b7c1b4b2b60720f05dddaa3cc119cab2cee079
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang-tools-extra/test/clang-doc/basic-project.test
Log Message:
-----------
[clang-doc] Add testing without --repository for HTML documentation (#131894)
https://github.com/llvm/llvm-project/issues/131697 reported a crash when
--repository was unused, so make sure we test the project in both
configurations.
Commit: cc2a86ad35350f97b15bc7f8c71d1be7fe64bc16
https://github.com/llvm/llvm-project/commit/cc2a86ad35350f97b15bc7f8c71d1be7fe64bc16
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LLVM][Docs] Add language reference for `llvm.readsteadycounter` (#132040)
Summary:
This was not added in the original patch, add LLVM documentation.
Commit: d7879e524fbbc4c2790dac62343444191f736f00
https://github.com/llvm/llvm-project/commit/d7879e524fbbc4c2790dac62343444191f736f00
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.cpp
Log Message:
-----------
[ARM] Use DenseSet instead of DenseMap. NFC (#131978)
The value in the map is set to "true" when something is added to the
map.
Techncally this:
if (!DefRegs.contains(Reg))
will set the value in the map to false if it didn't already exist, and
this is used to indicate the value wasn't in the map. This only occurs
after all the "true" values have already been added to the map.
Commit: e53bea51829ee9876a2010fec1a13d740533b89a
https://github.com/llvm/llvm-project/commit/e53bea51829ee9876a2010fec1a13d740533b89a
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libcxx/include/__algorithm/count.h
M libcxx/include/__bit/popcount.h
M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/count.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/ranges.count.pass.cpp
Log Message:
-----------
[libc++] Fix ambiguous call in {ranges, std}::count (#122529)
This PR fixes an ambiguous call encountered while using the
`std::ranges::count` and `std::count` algorithms with `vector<bool>`
with small `size_type`s.
The ambiguity arises from integral promotions during the internal
bitwise arithmetic of the `count` algorithms for small integral types.
This results in multiple viable candidates:
`__libcpp_popcount(unsigned)`,` __libcpp_popcount(unsigned long)`, and
`__libcpp_popcount(unsigned long long)`, leading to an ambiguous call
error. To resolve this ambiguity, we introduce a dispatcher function,
`__popcount`, which directs calls to the appropriate overloads of
`__libcpp_popcount`. This closes #122528.
Commit: cb493d2bab40a480e3daba22ffee54d024817f05
https://github.com/llvm/llvm-project/commit/cb493d2bab40a480e3daba22ffee54d024817f05
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M offload/DeviceRTL/src/DeviceUtils.cpp
M offload/DeviceRTL/src/Misc.cpp
Log Message:
-----------
[OpenMP] Replace utilities with 'gpuintrin.h' definitions (#131644)
Summary:
Port more instructions. AMD version is at
https://gist.github.com/jhuber6/235d7ee95f747c75f9a3cfd8eedac6aa
Commit: 2c41a8e6d39800383edfd863d6d96f0cfc4a2283
https://github.com/llvm/llvm-project/commit/2c41a8e6d39800383edfd863d6d96f0cfc4a2283
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
M clang/test/CodeGenHLSL/builtins/clamp.hlsl
M clang/test/SemaHLSL/BuiltIns/clamp-errors-16bit.hlsl
M clang/test/SemaHLSL/BuiltIns/clamp-errors.hlsl
Log Message:
-----------
[HLSL] Fix bug in new clamp overloads (#131928)
In some cases using the newly introduced clamp overloads, when floats
were involved, clang would behave differently than DXC.
To ensure the same behavior as DXC, require that for mix scalar/vector
overloads the type of the scalar matches the type of the vector.
Commit: 5720a792a950f46a9b1ebdf0b658b76dc02a9833
https://github.com/llvm/llvm-project/commit/5720a792a950f46a9b1ebdf0b658b76dc02a9833
Author: John Harrison <harjohn at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
Log Message:
-----------
[lldb-dap] Waiting for the test binary to exit prior to dumping logs. (#131917)
This should ensure we have the full logs prior to dumping the logs.
Additionally, printing log dumps to stderr so they are adjacent to
assertion failures.
Commit: c5195ae2d0c1f3925f48ecb0cf037d3f67d45a85
https://github.com/llvm/llvm-project/commit/c5195ae2d0c1f3925f48ecb0cf037d3f67d45a85
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libcxx/include/__algorithm/equal.h
M libcxx/include/__bit_reference
M libcxx/include/__fwd/bit_reference.h
M libcxx/include/__vector/comparison.h
M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/ranges.equal.pass.cpp
Log Message:
-----------
[libc++] Fix {std, ranges}::equal for vector<bool> with small storage types (#130394)
The current implementation of `{std, ranges}::equal` fails to correctly
compare `vector<bool>`s when the underlying storage type is smaller than
`int` (e.g., `unsigned char`, `unsigned short`, `uint8_t` and
`uint16_t`). See [demo](https://godbolt.org/z/j4s87s6b3)). The problem
arises due to integral promotions on the intermediate bitwise
operations, leading to incorrect final equality comparison results. This
patch fixes the issue by ensuring that `{std, ranges}::equal` operate
properly for both aligned and unaligned bits.
Fixes #126369.
Commit: 480202f0d16f7dbc5c650aea6e8dfd9eca5b999d
https://github.com/llvm/llvm-project/commit/480202f0d16f7dbc5c650aea6e8dfd9eca5b999d
Author: dong-miao <601183878 at qq.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Preprocessor/riscv-target-features.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
A llvm/lib/Target/RISCV/RISCVInstrInfoZclsd.td
A llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/MC/RISCV/attribute-arch.s
A llvm/test/MC/RISCV/rv32zclsd-invalid.s
A llvm/test/MC/RISCV/rv32zclsd-valid.s
A llvm/test/MC/RISCV/rv32zilsd-invalid.s
A llvm/test/MC/RISCV/rv32zilsd-valid.s
M llvm/test/MC/RISCV/rv64c-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add Zilsd and Zclsd Extensions (#131094)
This commit adds the Load/Store pair instructions (Zilsd) and Compressed
Load/Store pair instructions (Zclsd).
[Specification
link](https://github.com/riscv/riscv-isa-manual/blob/main/src/zilsd.adoc).
Commit: a5b3d3a03f3291b1b62c7c25bc40b494660421cb
https://github.com/llvm/llvm-project/commit/a5b3d3a03f3291b1b62c7c25bc40b494660421cb
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libcxx/include/__algorithm/copy.h
M libcxx/include/__fwd/bit_reference.h
M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy.pass.cpp
M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy.pass.cpp
Log Message:
-----------
[libc++] Fix {std, ranges}::copy for vector<bool> with small storage types (#131545)
The current implementation of `{std, ranges}::copy` fails to copy
`vector<bool>` correctly when the underlying storage type
(`__storage_type`) is smaller than `int`, such as `unsigned char`,
`unsigned short`, `uint8_t` and `uint16_t`. The root cause is that the
unsigned small storage type undergoes integer promotion to (signed)
`int`, which is then left and right shifted, leading to UB (before
C++20) and sign-bit extension (since C++20) respectively. As a result,
the underlying bit mask evaluations become incorrect, causing erroneous
copying behavior.
This patch resolves the issue by correcting the internal bitwise
operations, ensuring that `{std, ranges}::copy` operates correctly for
`vector<bool>` with any custom (unsigned) storage types.
Fixes #131692.
Commit: 1456eabca80d57ebd38b46e49ef3d25aace198ae
https://github.com/llvm/llvm-project/commit/1456eabca80d57ebd38b46e49ef3d25aace198ae
Author: TatWai Chong <tatwai.chong at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
M mlir/test/Dialect/Tosa/availability.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
M mlir/test/Dialect/Tosa/invalid_extension.mlir
M mlir/test/Dialect/Tosa/profile_all_unsupported.mlir
M mlir/test/Dialect/Tosa/profile_pro_int_unsupported.mlir
Log Message:
-----------
[mlir][tosa] Finalize profile-based validation for TOSA v1.0 (#131208)
- When the operand type of an operation changes to a profile-dependent
type, the compliance metadata must be updated. Update compliance check
for the following:
- CONV2D, CONV3D, DEPTHWISE_CONV2D, and TRANSPOSE_CONV2D, as zero points
have changed to variable inputs.
- PAD, because pad_const has been changed to a variable input.
- GATHER and SCATTER, as indices has changed to index_t.
- Add an int16 extension check for CONCAT.
- Add a compliance check for COND_IF, WHILE_LOOP, VARIABLE,
VARIABLE_READ, and VARIABLE_WRITE.
- Correct the profile requirements for IDENTITY, TABLE, MATMUL and
LOGICAL-like operations.
- Remove unnecessary checks for non-v1.0 operations.
- Add condition requirements (anyOf and allOf) to the type mode of
metadata for modes that have multiple profile/extension considerations.
Commit: 029cb8aff1450ed6d69f671a5e5e3e226316b42a
https://github.com/llvm/llvm-project/commit/029cb8aff1450ed6d69f671a5e5e3e226316b42a
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libcxx/include/__algorithm/copy_backward.h
M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy_backward.pass.cpp
M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy_backward.pass.cpp
Log Message:
-----------
[libc++] Fix copy_backward for vector<bool> with small storage types (#131560)
This patch fixes an issue in libc++ where `std::copy_backward` and
`ranges::copy_backward` incorrectly copy `std::vector<bool>` with small
storage types (e.g., `uint8_t`, `uint16_t`). The problem arises from
flawed bit mask computations involving integral promotions and sign-bit
extension, leading to unintended zeroing of bits. This patch corrects
the bitwise operations to ensure correct bit-level copying.
Fixes #131718.
Commit: 70480fcff64e2e389da8bc48043719a554893c6f
https://github.com/llvm/llvm-project/commit/70480fcff64e2e389da8bc48043719a554893c6f
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libcxx/test/std/containers/sequences/vector.bool/assign_copy.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/assign_move.pass.cpp
Log Message:
-----------
[libc++] Validate vector<bool> copy/move-assignment operators in realistic scenarios (#119817)
The existing tests for `vector<bool>` copy- and move-assignment
operators are limited to 3 bits only, which are inadequate to cover
realistic scenarios. Most `vector<bool>` operations have code paths that
are executed only when multiple storage words are involved, with each
storage word typically comprising 64 bits on a 64-bit platform.
Furthermore, the existing tests fail to cover all combinations
`POCCA`/`POCMA`, along with different allocator equality and/or
reallocation scenarios, leaving some critical code paths untested.
This patch enhances the test coverage by introducing new tests covering
up to 5 storage words, ensuring that partial words in the front or tail,
and whole words in the middle are all properly tested. Moreover, these
new tests ensure that the copy- and move-assignment operators are tested
under all combinations of `POCCA`/`POCMA` and various allocator equality
scenarios, both with or without reallocations.
Commit: 25613b32abaea9719ba1f25934d34acb665d374c
https://github.com/llvm/llvm-project/commit/25613b32abaea9719ba1f25934d34acb665d374c
Author: James Y Knight <jyknight at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
Log Message:
-----------
NFC: fix whitespace lint in bazel file.
Commit: 7af0bfe62fff676c66a5394995b03030cf5baef4
https://github.com/llvm/llvm-project/commit/7af0bfe62fff676c66a5394995b03030cf5baef4
Author: John Harrison <harjohn at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lldb/tools/lldb-dap/CMakeLists.txt
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/DAPForward.h
A lldb/tools/lldb-dap/DAPLog.cpp
M lldb/tools/lldb-dap/DAPLog.h
M lldb/tools/lldb-dap/EventHelper.cpp
M lldb/tools/lldb-dap/Transport.cpp
M lldb/tools/lldb-dap/Transport.h
M lldb/tools/lldb-dap/lldb-dap.cpp
Log Message:
-----------
[lldb-dap] Ensure logging statements are written as a single chunk. (#131916)
I noticed this while debugging some unit tests that the logs
occasionally would intersperse two log statements.
Previously, it was possible for a log statement to have two messages
interspersed since the timestamp and log statement were two different
writes to the log stream.
I created a Log helper to ensure we have a lock while attempting to write
to the logs.
Commit: 99997d717bee23fd9d3a1aec87f7066156b668fc
https://github.com/llvm/llvm-project/commit/99997d717bee23fd9d3a1aec87f7066156b668fc
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/tools/lldb-dap/BUILD.gn
Log Message:
-----------
[gn build] Port 7af0bfe62fff
Commit: 617646ab8d148ab51e8b94ccc0a40af2fc6c3dcf
https://github.com/llvm/llvm-project/commit/617646ab8d148ab51e8b94ccc0a40af2fc6c3dcf
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libcxx/include/deque
Log Message:
-----------
[libc++] Use __alloc_traits in <deque> whenever it is available for consistency (#126595)
When an allocator-aware container already defines a member type alias
`__alloc_traits` for `std::allocator_traits<allocator_type>`, we should
consistently use `__alloc_traits`. Mixing the usage of both
`__alloc_traits` and `std::allocator_traits` can lead to inconsistencies
and confusion.
Commit: 9a078a372ea69eb2d3f0700dfa14809648e78a88
https://github.com/llvm/llvm-project/commit/9a078a372ea69eb2d3f0700dfa14809648e78a88
Author: Kristof Beyls <kristof.beyls at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/docs/SecurityTransparencyReports.rst
Log Message:
-----------
2024 Security Group Transparency Report (#132011)
This adds the Security Response Group's transparency report for 2024.
Commit: b350bc2c0b88488f6c4eb84aadd4e74c67ca9b06
https://github.com/llvm/llvm-project/commit/b350bc2c0b88488f6c4eb84aadd4e74c67ca9b06
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libcxx/docs/Status/Cxx23Issues.csv
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue_pred.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue_pred.pass.cpp
Log Message:
-----------
[libc++] Verify forward_list self-merging is a no-op (#129985)
https://wg21.link/LWG3088 requires that `forward_list::merge()` is a no-op when passed
`*this`, which aligns with the behavior of `list::merge`. Although libc++'s implementation
of `forward_list::merge()` already meets this requirement, there were no tests to verify
this behavior. This patch adds the necessary tests to ensure that self-merging remains a
no-op and prevents any future regressions on this.
Closes #104942.
Commit: cd26dd55959c11c1cd0ea4fe1f07e0fa9cb7a72a
https://github.com/llvm/llvm-project/commit/cd26dd55959c11c1cd0ea4fe1f07e0fa9cb7a72a
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Parser/OpenMP/doacross-clause.f90
M flang/test/Parser/OpenMP/from-clause.f90
M flang/test/Parser/OpenMP/if-clause.f90
M flang/test/Parser/OpenMP/ordered-depend.f90
M flang/test/Parser/OpenMP/scan.f90
M flang/test/Parser/OpenMP/target-update-to-clause.f90
Log Message:
-----------
[flang][OpenMP] Use OmpDirectiveSpecification in simple directives (#131162)
The `OmpDirectiveSpecification` contains directive name, the list of
arguments, and the list of clauses. It was introduced to store the
directive specification in METADIRECTIVE, and could be reused everywhere
a directive representation is needed.
In the long term this would unify the handling of common directive
properties, as well as creating actual constructs from METADIRECTIVE by
linking the contained directive specification with any associated user
code.
Commit: 39ce99589b05ddd43e5c8b7f89ab5bbfda40d2ce
https://github.com/llvm/llvm-project/commit/39ce99589b05ddd43e5c8b7f89ab5bbfda40d2ce
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/CIR/CIRGenerator.h
A clang/include/clang/CIR/CIRToCIRPasses.h
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/Frontend/FrontendOptions.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenerator.cpp
A clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CIR/FrontendAction/CMakeLists.txt
M clang/lib/CIR/Lowering/CIRPasses.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
A clang/test/CIR/Transforms/canonicalize.cir
A clang/test/CIR/mlirargs.c
A clang/test/CIR/mlprint.c
M clang/tools/cir-opt/cir-opt.cpp
Log Message:
-----------
[CIR] Upstream cir-canonicalize pass (#131891)
This change introduces the cir-canonicalize pass. This is a simple
cir-to-cir transformation that eliminates empty scopes and redundant
branches. It will be expanded in future changes to simplify other
redundant instruction sequences.
MLIR verification and mlir-specific command-line option handling is also
introduced here.
Commit: 5475834737663c0da3c444fcf1c8ab5567c39136
https://github.com/llvm/llvm-project/commit/5475834737663c0da3c444fcf1c8ab5567c39136
Author: Reid Kleckner <rnk at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
M llvm/test/Instrumentation/SanitizerCoverage/interposable-symbol.ll
Log Message:
-----------
[sancov] Use comdats when one already exists (#131929)
This code avoids adding comdat groups to interposable linkage types
(weak, linkonce (non-ODR)) to avoid changing semantics, since comdat
elimination happens before weak/strong prevailaing symbol resolution.
However, if the function is already in a comdat, we can add to the group
without changing the semantics of the linked program.
Fixes an issue uncovered in PR #126240
Commit: dd17c649abbfc7e4052e45d3240b23feb6530a31
https://github.com/llvm/llvm-project/commit/dd17c649abbfc7e4052e45d3240b23feb6530a31
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
A clang/test/SemaHLSL/BuiltIns/max-errors-16bit.hlsl
A clang/test/SemaHLSL/BuiltIns/min-errors-16bit.hlsl
Log Message:
-----------
[HLSL] Implement min and max overloads using templates (#131666)
Replace min and max overload implementation using macros with one using
templates.
Enable overloads of the forms:
vector<T,N> min/max(vector<T,N> p0, T p1)
vector<T,N> min/max(T p0, vector<T,N> p1)
Add new tests.
Closes #131170
Commit: d09ecb07c2894e3167b6cfb5761663fe0f01b905
https://github.com/llvm/llvm-project/commit/d09ecb07c2894e3167b6cfb5761663fe0f01b905
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-lsfe.ll
M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-lsfe.ll
M llvm/test/CodeGen/AArch64/Atomics/generate-tests.py
Log Message:
-----------
[AArch64][CodeGen] Add +lsfe atomicrmw tests where the result is unused. (#132022)
Following the discussion on #131174, update generate-tests.py script to
emit atomicrmw tests where the result is unused and add a note to
explain why these do use ST[F]ADD.
Commit: 297f0b3f4c05c6ef40183809eac5ccac9ca8c4ce
https://github.com/llvm/llvm-project/commit/297f0b3f4c05c6ef40183809eac5ccac9ca8c4ce
Author: Alexander Shaposhnikov <ashaposhnikov at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.cpp
M clang/include/clang/Basic/Attr.td
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/CodeGen/Targets/TCE.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/test/CodeGenCUDASPIRV/spirv-attrs.cu
A clang/test/SemaCUDA/spirv-attrs-diag.cu
M clang/test/SemaCUDA/spirv-attrs.cu
Log Message:
-----------
[CudaSPIRV] Allow using integral non-type template parameters as attribute args (#131546)
Allow using integral non-type template parameters as attribute arguments
of
reqd_work_group_size and work_group_size_hint.
Test plan:
ninja check-all
Commit: 566916131ecbea8f241fb5244eb77abac1b36658
https://github.com/llvm/llvm-project/commit/566916131ecbea8f241fb5244eb77abac1b36658
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M .github/workflows/libcxx-build-and-test.yaml
M libcxx/utils/ci/run-buildbot-container
Log Message:
-----------
[libc++][CI] Use latest Docker image. (#130497)
This image was updated in #130433.
Commit: 03adb0ec7dce36814b9e403e98e7471630c4a732
https://github.com/llvm/llvm-project/commit/03adb0ec7dce36814b9e403e98e7471630c4a732
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
M clang/test/Analysis/analyzer-config.c
M clang/test/Analysis/virtualcall.cpp
Log Message:
-----------
[analyzer] Remove deprecated option VirtualCall:PureOnly (#131823)
VirtualCallChecker.cpp implements two related checkers:
- `optin.cplusplus.VirtualCall` which reports situations when
constructors or destructors call virtual methods (which is bugprone
because it does not trigger virtual dispatch, but can be legitmate).
- `cplusplus.PureVirtualCall` reports situations when constructors or
destructors call _pure_ virtual methods, which is an error.
Six years ago these two bug types were both reported by the same checker
(called `optin.cplusplus.VirtualCall`) and it had an option called
`PureOnly` which limited its output to the pure case.
When (in 2019) the two checker parts were separated by the commit
d3971fe97b64785c079d64bf4c8c3e2b5e1f85a1, the option `PureOnly` was
preserved for the sake of compatibility, but it is no longer useful
(when it is set to true, it just suppresses all reports from
`optin.cplusplus.VirtualCall`) so it was marked as deprecated.
I'm removing this deprecated option now because it is no longer relevant
and its presence caused minor complications when I was porting
`VirtualCallChecker.cpp` to the new multipart checker framework
(introduced in 27099982da2f5a6c2d282d6b385e79d080669546).
Commit: ac9e4e9b3320b8dc63abfbdca8b7561e372ec8c7
https://github.com/llvm/llvm-project/commit/ac9e4e9b3320b8dc63abfbdca8b7561e372ec8c7
Author: Sergio Afonso <safonsof at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[Flang][OpenMP] Simplify entry block creation for BlockArgOpenMPOpInterface ops, NFC (#132036)
This patch adds the `OpWithBodyGenInfo::blockArgs` field and updates
`createBodyOfOp()` to prevent the need for `BlockArgOpenMPOpInterface`
operations to pass the same callback, minimizing chances of introducing
inconsistent behavior.
Commit: f84bc1ca433bbc35d9a9107f6adbdbd232b0642c
https://github.com/llvm/llvm-project/commit/f84bc1ca433bbc35d9a9107f6adbdbd232b0642c
Author: Joel Wee <joelwee at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
Fix after 2b8f88791502
Commit: 0260bcb5f449aed83ebd40dc264b75e1fe40c2b9
https://github.com/llvm/llvm-project/commit/0260bcb5f449aed83ebd40dc264b75e1fe40c2b9
Author: Joel Wee <joelwee at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/test/Conversion/VectorToLLVM/pass-option-serialization.mlir
Log Message:
-----------
Fix after f3dcc0f
Commit: bda87e0a09d44cdc8cbd1f4209182c3ff94b3428
https://github.com/llvm/llvm-project/commit/bda87e0a09d44cdc8cbd1f4209182c3ff94b3428
Author: Krishna Pandey <47917477+krishna2803 at users.noreply.github.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/hdr/CMakeLists.txt
A libc/hdr/sched_macros.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/cpu_set_t.h
M libc/include/llvm-libc-macros/linux/sched-macros.h
M libc/include/llvm-libc-types/cpu_set_t.h
M libc/src/sched/CMakeLists.txt
M libc/src/sched/linux/CMakeLists.txt
A libc/src/sched/linux/sched_getcpuisset.cpp
A libc/src/sched/linux/sched_setcpuset.cpp
A libc/src/sched/linux/sched_setcpuzero.cpp
A libc/src/sched/sched_getcpuisset.h
A libc/src/sched/sched_setcpuset.h
A libc/src/sched/sched_setcpuzero.h
Log Message:
-----------
[libc][sched] Implement `CPU_ZERO`, `CPU_ISSET`, `CPU_SET` macros (#131524)
This PR implements the following macros for `sched.h`:
- `CPU_ZERO`
- `CPU_ISSET`
- `CPU_SET`
Fixes #124642
---------
Signed-off-by: krishna2803 <kpandey81930 at gmail.com>
Commit: 825460a7728662d0062405e690485b7a1b689484
https://github.com/llvm/llvm-project/commit/825460a7728662d0062405e690485b7a1b689484
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h
M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationTest.cpp
Log Message:
-----------
[lldb/gdb-remote] Do not crash on an invalid server response (#131979)
An invalid RLE sequence in the received packet could result in an
out-of-bounds reading that could cause a crash.
Commit: 053a714adda3e1d3d506f417c7fbc6eb3fa75405
https://github.com/llvm/llvm-project/commit/053a714adda3e1d3d506f417c7fbc6eb3fa75405
Author: A. Jiang <de34 at live.cn>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M libcxx/include/__algorithm/ranges_inplace_merge.h
M libcxx/include/algorithm
M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_comparators.pass.cpp
M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_projections.pass.cpp
M libcxx/test/std/algorithms/alg.sorting/alg.merge/ranges_inplace_merge.pass.cpp
M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
M libcxx/test/std/algorithms/ranges_robust_against_omitting_invoke.pass.cpp
M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
M libcxx/test/std/algorithms/robust_against_adl_on_new.pass.cpp
Log Message:
-----------
[libc++] Implement part of P2562R1: constexpr `ranges::inplace_merge` (#131947)
Drive-by changes:
- Consistently mark `std::__inplace_merge::__inplace_merge_impl`
`_LIBCPP_CONSTEXPR_SINCE_CXX26`.
- This function template is only called by other functions that becomes
constexpr since C++26, and it itself calls `std::__inplace_merge` that
is constexpr since C++26.
- Unblock related test coverage in constant evaluation for
`stable_partition`, `ranges::stable_sort`, `std::stable_sort`,
`std::stable_partition`, and `std::inplace_merge`.
Commit: 44744301e940cc4d15f0c2f4876e0fdaddc6855b
https://github.com/llvm/llvm-project/commit/44744301e940cc4d15f0c2f4876e0fdaddc6855b
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libcxx/docs/TestingLibcxx.rst
Log Message:
-----------
[libc++][docs] Minor update to the benchmark documentation
Commit: 15c96d6874e8e37e583cf2994b290b9a6869cd30
https://github.com/llvm/llvm-project/commit/15c96d6874e8e37e583cf2994b290b9a6869cd30
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/push-pop-opt-crash.ll
Log Message:
-----------
[RISCV] Update unrelated bad code from test case
In #131684, we found that the code generated a bnez zero, which is always
false. Since this is unrelated to the regression the test case was added for,
we change the IR here to avoid this test case from having this silly branching
pattern. This will help this test case avoid any changes as we do work to
optimize branches in the RISC-V backend.
Commit: e1f4daf836e24d9c39fdd4fda84c01e4af31fd65
https://github.com/llvm/llvm-project/commit/e1f4daf836e24d9c39fdd4fda84c01e4af31fd65
Author: Michael Spencer <bigcheesegs at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/Frontend/CompilerInstance.cpp
A clang/test/Modules/transitive-system.test
Log Message:
-----------
[clang][modules] Correctly set module map systemness (#131940)
This uses the systemness of the module map instead of of the Module
instance, as doing otherwise could incorrectly parse the other modules
in that module map as system.
This is still correct as the only ways to get a system module are by the
module map being in a system path, or the module having the [system]
attribute, both of which are handled here.
This makes it so that the systemness of a module is deterministic
instead of depending on the path taken to build it.
Commit: ca0fe95a5481ca526375a1b439f6d3cc8600c085
https://github.com/llvm/llvm-project/commit/ca0fe95a5481ca526375a1b439f6d3cc8600c085
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/stores-of-loads-merging.ll
Log Message:
-----------
[RISCV] Add tests for a case mentioned in review of pr130430
Commit: da1c19af7e8482a0357fe896ac77232c859837e7
https://github.com/llvm/llvm-project/commit/da1c19af7e8482a0357fe896ac77232c859837e7
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h
Log Message:
-----------
[clang][deps] Add missing include
Discovered by https://green.lab.llvm.org/job/llvm.org/job/clang-stage2-Rthinlto/588.
Commit: 2d1e64669e5c9757f6c2bb682a9f657620166f33
https://github.com/llvm/llvm-project/commit/2d1e64669e5c9757f6c2bb682a9f657620166f33
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/select-with-bitwise-ops.ll
Log Message:
-----------
[InstCombine] Reuse common code between foldSelectICmpAndBinOp and foldSelectICmpAnd. (#131902)
The commit that was removed from
https://github.com/llvm/llvm-project/pull/127905 due to the conflict
with https://github.com/llvm/llvm-project/pull/128741.
The use of common code results in that the foldSelectICmpAndBinOp also
use knownbits in the same way as was added for foldSelectICmpAnd in
https://github.com/llvm/llvm-project/pull/128741.
proof for the use of knowbits in foldSelectICmpAndBinOp:
https://alive2.llvm.org/ce/z/RYXr_k
Commit: 587f997db73aa0aab34a4e5e0ad5db6779cd9351
https://github.com/llvm/llvm-project/commit/587f997db73aa0aab34a4e5e0ad5db6779cd9351
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/include/flang/Semantics/tools.h
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/pointer-assignment.cpp
M flang/lib/Semantics/tools.cpp
M flang/test/Semantics/structconst03.f90
M flang/test/Semantics/structconst04.f90
Log Message:
-----------
[flang] Catch C15104(4) violations when coindexing is present (#130677)
The value of a structure constructor component can't have a pointer
ultimate component if it is a coindexed designator.
Commit: abebac5b861b7e67dcd3e3adc1ec5b6c2172c06a
https://github.com/llvm/llvm-project/commit/abebac5b861b7e67dcd3e3adc1ec5b6c2172c06a
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/lib/Semantics/check-declarations.cpp
M flang/test/Semantics/event02b.f90
Log Message:
-----------
[flang] Dig deeper to find more EVENT_TYPE/LOCK_TYPE misuse (#130687)
Only objects may have these types, or have potential subobject
components with these types.
Commit: 1dc397deedb00ff13906788dd1a24d2bd21652f4
https://github.com/llvm/llvm-project/commit/1dc397deedb00ff13906788dd1a24d2bd21652f4
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/lib/Semantics/check-coarray.cpp
M flang/lib/Semantics/check-coarray.h
A flang/test/Semantics/change_team02.f90
Log Message:
-----------
[flang] Enforce control flow restrictions on CHANGE TEAM (#131013)
Like DO CONCURRENT and CRITICAL constructs, control flow into and out of
a CHANGE TEAM construct is disallowed.
Commit: 3f04fb42aa54c15e21c81c12bb8afb128d859eee
https://github.com/llvm/llvm-project/commit/3f04fb42aa54c15e21c81c12bb8afb128d859eee
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/lib/Semantics/check-coarray.cpp
M flang/test/Semantics/form_team01a.f90
M flang/test/Semantics/form_team01b.f90
Log Message:
-----------
[flang] Complete semantic checks for FORM TEAM (#131022)
Add remaining checking for the FORM TEAM statement, complete and enable
a test.
Commit: 329bfa91b06724bead2997de45b105b28f220495
https://github.com/llvm/llvm-project/commit/329bfa91b06724bead2997de45b105b28f220495
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/lib/Semantics/check-call.cpp
A flang/test/Semantics/bug396.f90
Log Message:
-----------
[flang] Fix crash in CO_REDUCE semantics (#131211)
A std::optional<> value was being accessed without first ensuring its
presence.
Commit: 9f284e1784b707619afd4d278bac8a72079d1598
https://github.com/llvm/llvm-project/commit/9f284e1784b707619afd4d278bac8a72079d1598
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/include/flang/Tools/TargetSetup.h
M flang/test/Integration/debug-complex-1.f90
M flang/test/Lower/Intrinsics/acos_complex16.f90
M flang/test/Lower/Intrinsics/acosh_complex16.f90
M flang/test/Lower/Intrinsics/asin_complex16.f90
M flang/test/Lower/Intrinsics/asinh_complex16.f90
M flang/test/Lower/Intrinsics/atan_complex16.f90
M flang/test/Lower/Intrinsics/atanh_complex16.f90
M flang/test/Lower/Intrinsics/cos_complex16.f90
M flang/test/Lower/Intrinsics/cosh_complex16.f90
M flang/test/Lower/Intrinsics/exp_complex16.f90
M flang/test/Lower/Intrinsics/log_complex16.f90
M flang/test/Lower/Intrinsics/pow_complex16.f90
M flang/test/Lower/Intrinsics/pow_complex16i.f90
M flang/test/Lower/Intrinsics/pow_complex16k.f90
M flang/test/Lower/Intrinsics/sin_complex16.f90
M flang/test/Lower/Intrinsics/sinh_complex16.f90
M flang/test/Lower/Intrinsics/sqrt_complex16.f90
M flang/test/Lower/Intrinsics/tan_complex16.f90
M flang/test/Lower/Intrinsics/tanh_complex16.f90
M flang/test/Lower/complex-operations.f90
M flang/test/Semantics/data05.f90
M flang/test/Semantics/intrinsics01.f90
M flang/test/Semantics/modfile12.f90
Log Message:
-----------
[flang] Disabling REAL kinds must also disable their COMPLEX (#131353)
When disabling kinds of REAL in the TargetCharacteristics, one must also
disable the corresponding kinds of COMPLEX.
Fixes https://github.com/llvm/llvm-project/issues/131088.
Commit: b99dab25879449cb89c1ebd7b4088163543918e3
https://github.com/llvm/llvm-project/commit/b99dab25879449cb89c1ebd7b4088163543918e3
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/lib/Semantics/check-declarations.cpp
M flang/test/Semantics/call10.f90
Log Message:
-----------
[flang] Exempt construct entities from SAVE check for PURE (#131383)
A PURE subprogram can't have a local variable with the SAVE attribute.
An ASSOCIATE or SELECT TYPE construct entity whose selector is a
variable will return true from IsSave(); exclude them from the local
variable check.
Fixes https://github.com/llvm/llvm-project/issues/131356.
Commit: 7f7d7d552b8d6731fdfbb77a154595ddf056342e
https://github.com/llvm/llvm-project/commit/7f7d7d552b8d6731fdfbb77a154595ddf056342e
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/lib/Semantics/expression.cpp
A flang/test/Semantics/bug131579.f90
Log Message:
-----------
[flang] Use local name for structure constructor (#132047)
When reinterpreting an ambiguously parsed function reference as a
structure constructor, use the original symbol of the type in the
representation of the derived type spec of the structure constructor,
not its ultimate resolution. The distinction turns out to matter when
generating module files containing derived type constants as
initializers when the derived types' names have undergone USE
association renaming.
Fixes https://github.com/llvm/llvm-project/issues/131579.
Commit: 3c657ceef9ced068b0c7bc2f1d5fb74250720f6c
https://github.com/llvm/llvm-project/commit/3c657ceef9ced068b0c7bc2f1d5fb74250720f6c
Author: Eric Astor <epastor at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/CMakeLists.txt
A llvm/test/tools/llvm-ml/architecture.asm
A llvm/test/tools/llvm-ml/architecture_errors.asm
M llvm/test/tools/llvm-ml/dot_operator.asm
M llvm/test/tools/llvm-ml/extern.asm
M llvm/test/tools/llvm-ml/feat00.asm
M llvm/test/tools/llvm-ml/feat00_override.asm
M llvm/test/tools/llvm-ml/indirect_branch.asm
M llvm/test/tools/llvm-ml/macro.asm
M llvm/test/tools/llvm-ml/ml32-context.asm
M llvm/test/tools/llvm-ml/nested_proc.asm
M llvm/test/tools/llvm-ml/proc.asm
M llvm/test/tools/llvm-ml/proc_frame.asm
M llvm/test/tools/llvm-ml/repeat_directives.asm
M llvm/test/tools/llvm-ml/rip_relative_addressing.asm
M llvm/test/tools/llvm-ml/strings_errors.asm
M llvm/test/tools/llvm-ml/struct.asm
M llvm/tools/llvm-ml/CMakeLists.txt
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[ms] [llvm-ml] Add llvm-ml64 alias (#131854)
Rather than requiring users to pass `-m64` to the `llvm-ml` driver to
get 64-bit behavior, we add the `llvm-ml64` alias, matching the behavior
of `ML.EXE` and `ML64.EXE`.
The original flavor/bitness flags still work, but the alias should make
some workflows easier.
NOTE: The logic for this already existed in the code; we're just finally
adding the build/install instructions to match.
Commit: 6b9716b7f48a773ec7e73556245addf9aa25fad2
https://github.com/llvm/llvm-project/commit/6b9716b7f48a773ec7e73556245addf9aa25fad2
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/include/flang/Semantics/expression.h
M flang/lib/Semantics/expression.cpp
M flang/test/Semantics/array-constr-values.f90
Log Message:
-----------
[flang] Catch bad usage case of whole assumed-size array (#132052)
Whole assumed-size arrays are generally not allowed outside specific
contexts, where expression analysis notes that they can appear. But
contexts can nest, and in the case of an actual argument that turns out
to be an array constructor, the permission to use a whole assumed-size
array must be rescinded.
Fixes https://github.com/llvm/llvm-project/issues/131909.
Commit: b37be0e734ecc29fe55eb9d7a8119f82afc9da54
https://github.com/llvm/llvm-project/commit/b37be0e734ecc29fe55eb9d7a8119f82afc9da54
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/test/Driver/openmp-offload.c
Log Message:
-----------
[Offload] Handle `BoundArchitecture` for non-GPU targets (#132037)
Summary:
Offloading tends to have a bound architecture that directly correponds
to the `-mcpu` argument for that embedded job. This is currently handled
by the GPU offloading toolchains, but is ignored by the CPU ones. This
is problematic for languages like SYCL or OpenMP which permit
'offloading' to non-GPU targets. This patch handles this by putting
generic handling in the GCC toolchain for those languages.
I would've made this fully generic but it regressed some HIP sanitizer
tests because their use-case is really weird. This also only goes for
the languages that inherit from 'generic_gcc`. I could've made it in the
base class, but I felt like it wasn't necessary as we only support
offloading based off of this toolchain. In the future if we need it we
can move it around.
---------
Co-authored-by: Nick Sarnie <nick.sarnie at intel.com>
Commit: b0876994ebe3118407a8a70d79bb3149cebb5fda
https://github.com/llvm/llvm-project/commit/b0876994ebe3118407a8a70d79bb3149cebb5fda
Author: David Green <david.green at arm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/ctlz.ll
Log Message:
-----------
[AArch64][GlobalISel] Clean up CTLZ vector type legalization. (#131514)
Similar to other operations, s8, s16 and s32 vector elements are clamped
to legal vector sizes, but in this case s64 are scalarized to use the
gpr instructions. This allows vector types to split as opposed to
scalarizing.
Commit: 02744c5010c8a37b4f20e377a5673cf624a3a159
https://github.com/llvm/llvm-project/commit/02744c5010c8a37b4f20e377a5673cf624a3a159
Author: Ayokunle Amodu <ayokunle321 at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ExprConstant.cpp
Log Message:
-----------
[clang][diagnostics] Update note_constexpr_invalid_cast to use enum_select and adjust its uses (#130868)
Handles #123121
This patch updates `note_constexpr_invalid_cast` diagnostic to use
`enum_select` instead of `select,` improving readability and reducing
reliance on magic numbers in caller sites.
Commit: 7cabcdb2d29ce70aab1a8ad38f66015a7c901133
https://github.com/llvm/llvm-project/commit/7cabcdb2d29ce70aab1a8ad38f66015a7c901133
Author: Augusto Noronha <anoronha at apple.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M cross-project-tests/debuginfo-tests/llgdb-tests/llgdb.py
M cross-project-tests/debuginfo-tests/llgdb-tests/test_debuginfo.pl
M cross-project-tests/lit.cfg.py
Log Message:
-----------
[debuginfo-tests] Use built lldb for testing if available (#131681)
The cross-project-tests's debuginfo-tests don't rely on lldb being built
to run. While this is a good, a bug in the system lldb can cause a test
to fail with no way of fixing it. This patch makes it so the tests use
the built lldb instead if it's available.
Commit: a0ae88bffea766f4c79d51674b81b5d5db825d33
https://github.com/llvm/llvm-project/commit/a0ae88bffea766f4c79d51674b81b5d5db825d33
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/test/Lower/Intrinsics/product.f90
M flang/test/Lower/Intrinsics/sum.f90
M flang/test/Lower/complex-operations.f90
Log Message:
-----------
[flang] Disable 3 x86-64 tests on non-x86-64 (#132088)
Now that COMPLEX(KIND=10) is properly disabled where 80-bit
floating-point types are not available, three tests that were not
peculiar to x86-64 are failing on other targets. Make them specific to
x86-64.
Commit: 4e3440d9dd181f83ac1aa23f9c458d1344413e98
https://github.com/llvm/llvm-project/commit/4e3440d9dd181f83ac1aa23f9c458d1344413e98
Author: David Olsen <dolsen at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/test/CIR/CodeGen/basic.c
M clang/test/CIR/CodeGen/basic.cpp
M clang/test/CIR/CodeGen/cast.cpp
M clang/test/CIR/CodeGen/unary.cpp
M clang/test/CIR/Lowering/basic.cpp
M clang/test/CIR/Lowering/func-simple.cpp
M clang/test/CIR/func-simple.cpp
Log Message:
-----------
[CIR] Upstream a basic version of class LexicalScope (#131945)
Upstream the parts of class `CIRGenFunction::LexicalScope` that
implement function return values. There is a bit of other functionality
in here, such as the implicit `cir.yield` at the end of a non-function
scope, but this is mostly about function returns.
The parts of `LexicalScope` that handle calling destructors, switch
statements, ternary expressions, and exception handling still need to be
upstreamed.
There is a change in the generated ClangIR (which is why many of the
tests needed updating). Return values are stored in the
compiler-generated variable `__retval` rather than being passed to the
`cir.return` op directly. But there should be no change in the behavior
of the generated code.
Commit: bdca412681d668231aed0cb58b450713e8f9b01a
https://github.com/llvm/llvm-project/commit/bdca412681d668231aed0cb58b450713e8f9b01a
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/www/make_cxx_dr_status
Log Message:
-----------
[clang] Auto-detect which newline style to use for `cxx_dr_status.html` (#132045)
Aaron reported that `make_cxx_dr_status` replaces all newlines in
`cxx_dr_status.html`, which makes for a huge diff. On Windows, we can't
be compatible with all `autocrlf` modes at once, so this patch adds
autodetection of newline style using the existing file, if one is
present (which should be the case for all reasonable use cases).
Commit: 0827e3aae6eb69c2a6fa842ffa780881feb45b5d
https://github.com/llvm/llvm-project/commit/0827e3aae6eb69c2a6fa842ffa780881feb45b5d
Author: Justin Cady <desk at justincady.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/test/CoverageMapping/terminate-statements.cpp
A compiler-rt/test/profile/Linux/coverage-statement-expression.cpp
Log Message:
-----------
[Coverage] Fix region termination for GNU statement expressions (#130976)
Calls to __noreturn__ functions result in region termination for
coverage mapping. But this creates incorrect coverage results when
__noreturn__ functions (or other constructs that result in region
termination) occur within [GNU statement expressions][1].
In this scenario an extra gap region is introduced within VisitStmt,
such that if the following line does not introduce a new region it
is unconditionally counted as uncovered.
This change adjusts the mapping such that terminate statements
within statement expressions do not propagate that termination
state after the statement expression is processed.
[1]: https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html
Fixes #124296
Commit: a810141281cce5073d9a827a917c34d72bbd62b1
https://github.com/llvm/llvm-project/commit/a810141281cce5073d9a827a917c34d72bbd62b1
Author: Matthias Springer <me at m-sp.org>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/lib/Dialect/MemRef/Transforms/RuntimeOpVerification.cpp
A mlir/test/Integration/Dialect/MemRef/assume-alignment-runtime-verification.mlir
Log Message:
-----------
[mlir][memref] Add runtime verification for `memref.assume_alignment` (#130412)
Implement runtime verification for `memref.assume_alignment`.
Commit: 6aeae62aef63c7c11ab67a880716afdc92ac8422
https://github.com/llvm/llvm-project/commit/6aeae62aef63c7c11ab67a880716afdc92ac8422
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/test/CIR/CodeGen/array.cpp
M clang/test/CIR/IR/array.cir
M clang/test/CIR/Lowering/array.cpp
Log Message:
-----------
[CIR] Upstream global initialization for ArrayType (#131657)
This change adds global initialization for ArrayType
Issue #130197
Commit: 2f7ad891a7bf46aced761354ebe3c932a6ac5471
https://github.com/llvm/llvm-project/commit/2f7ad891a7bf46aced761354ebe3c932a6ac5471
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libc/test/UnitTest/Test.h
M libc/test/src/unistd/CMakeLists.txt
M libc/test/src/unistd/access_test.cpp
M libc/test/src/unistd/chdir_test.cpp
M libc/test/src/unistd/dup2_test.cpp
M libc/test/src/unistd/dup3_test.cpp
M libc/test/src/unistd/dup_test.cpp
M libc/test/src/unistd/fchdir_test.cpp
M libc/test/src/unistd/fpathconf_test.cpp
M libc/test/src/unistd/ftruncate_test.cpp
M libc/test/src/unistd/getentropy_test.cpp
M libc/test/src/unistd/getsid_test.cpp
M libc/test/src/unistd/isatty_test.cpp
M libc/test/src/unistd/link_test.cpp
M libc/test/src/unistd/linkat_test.cpp
M libc/test/src/unistd/lseek_test.cpp
M libc/test/src/unistd/pathconf_test.cpp
M libc/test/src/unistd/pipe2_test.cpp
M libc/test/src/unistd/pipe_test.cpp
M libc/test/src/unistd/pread_pwrite_test.cpp
M libc/test/src/unistd/read_write_test.cpp
M libc/test/src/unistd/readlink_test.cpp
M libc/test/src/unistd/readlinkat_test.cpp
M libc/test/src/unistd/rmdir_test.cpp
M libc/test/src/unistd/symlink_test.cpp
M libc/test/src/unistd/symlinkat_test.cpp
M libc/test/src/unistd/syscall_test.cpp
M libc/test/src/unistd/truncate_test.cpp
M libc/test/src/unistd/unlinkat_test.cpp
M utils/bazel/llvm-project-overlay/libc/test/src/unistd/BUILD.bazel
Log Message:
-----------
[libc] Migrate unistd tests to use ErrnoCheckingTest. (#132067)
Use ErrnoCheckingTest harness added in
d039af33096c0a83b03475a240d5e281e2271c44 for all unistd tests that
verify errno values. Stop explicitly setting it to zero in test code, as
harness does it.
It also verifies that the errno is zero at the end of each test case, so
update the ASSERT_ERRNO_EQ and ASSERT_ERRNO_FAILURE macro to clear out
its value after the verification (similar to how ErrnoSetterMatcher
does).
Update the CMake and Bazel rules for those tests. In the latter case,
remove commented out tests that are currently unsupported in Bazel,
since they get stale quickly.
Commit: 32476b99344fb0a3b85acbdba666e165181ec638
https://github.com/llvm/llvm-project/commit/32476b99344fb0a3b85acbdba666e165181ec638
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/profile/InstrProfilingPort.h
M compiler-rt/lib/profile/InstrProfilingUtil.c
M compiler-rt/lib/profile/InstrProfilingUtil.h
M compiler-rt/test/profile/Posix/instrprof-fork.c
R compiler-rt/test/profile/instrprof-no-mmap-during-merging.c
Log Message:
-----------
Revert " [profile] Implement a non-mmap path when reading profile files from a non-local filesystem (#131177)"
This reverts commit 14c95e0c8b25f6deba47cd279c5dcdeef3870159.
Test fails on mac, e.g. https://green.lab.llvm.org/job/llvm.org/job/clang-stage1-RA/3899/testReport/junit/Profile-x86_64/Profile-x86_64/instrprof_no_mmap_during_merging_c/
Commit: 8e773d8a10cc996fbbe834f59ed9f7044c3539e0
https://github.com/llvm/llvm-project/commit/8e773d8a10cc996fbbe834f59ed9f7044c3539e0
Author: Daniel Chen <cdchen at ca.ibm.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M compiler-rt/cmake/base-config-ix.cmake
M llvm/CMakeLists.txt
M runtimes/CMakeLists.txt
Log Message:
-----------
[compiler-rt] Disable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON on AIX. (#131200)
LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON is not supported on AIX.
Set it to OFF with a WARNING message on AIX.
Commit: 2a53358eea7f8da9ffb92d375976b3f78ce5f212
https://github.com/llvm/llvm-project/commit/2a53358eea7f8da9ffb92d375976b3f78ce5f212
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-zipeven-zipodd.ll
Log Message:
-----------
[RISCV] Add a comment to clarify purpose of a test from 93b8ef
Commit: 0f7bd60791ed18b98f84916d0dd371508cbf208c
https://github.com/llvm/llvm-project/commit/0f7bd60791ed18b98f84916d0dd371508cbf208c
Author: Michael Park <mcypark at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
Log Message:
-----------
[NFC] Add a leading comment to boolean arguments. (#131746)
Addressing [nit comments](https://github.com/llvm/llvm-project/pull/129982#discussion_r1997914387) from @shafik
Commit: bd2d8c0a7ee196cc60ab0d46d6fab416b1697ae1
https://github.com/llvm/llvm-project/commit/bd2d8c0a7ee196cc60ab0d46d6fab416b1697ae1
Author: Justin Cady <desk at justincady.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/test/CoverageMapping/terminate-statements.cpp
R compiler-rt/test/profile/Linux/coverage-statement-expression.cpp
Log Message:
-----------
Revert "[Coverage] Fix region termination for GNU statement expressions" (#132095)
Reverts llvm/llvm-project#130976
Breaks clang-cmake-x86_64-avx512-linux bot.
Commit: 0668bb28cc98202f1ae252fb0357b2f1043bdbe7
https://github.com/llvm/llvm-project/commit/0668bb28cc98202f1ae252fb0357b2f1043bdbe7
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M compiler-rt/lib/ctx_profile/CtxInstrContextNode.h
M compiler-rt/lib/ctx_profile/CtxInstrProfiling.cpp
M compiler-rt/lib/ctx_profile/CtxInstrProfiling.h
M compiler-rt/lib/ctx_profile/tests/CtxInstrProfilingTest.cpp
M compiler-rt/test/ctx_profile/TestCases/generate-context.cpp
M llvm/include/llvm/ProfileData/CtxInstrContextNode.h
M llvm/include/llvm/ProfileData/PGOCtxProfReader.h
M llvm/include/llvm/ProfileData/PGOCtxProfWriter.h
M llvm/lib/ProfileData/PGOCtxProfReader.cpp
M llvm/lib/ProfileData/PGOCtxProfWriter.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
A llvm/test/tools/llvm-ctxprof-util/Inputs/valid-with-unhandled.yaml
M llvm/test/tools/llvm-ctxprof-util/llvm-ctxprof-util.test
M llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp
Log Message:
-----------
[ctxprof] Track unhandled call targets (#131417)
Collect profiles for functions we encounter when collecting a contextual profile, that are not associated with a call site. This is expected to happen for signal handlers, but it also - problematically - currently happens for mem{memset|copy|move|set}, which are currently inserted after profile instrumentation.
Collecting a "regular" flat profile in these cases would hide the problem - that we loose better profile opportunities.
Commit: a306ae0eca4d4d016b719df32274ba1f73f4413a
https://github.com/llvm/llvm-project/commit/a306ae0eca4d4d016b719df32274ba1f73f4413a
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
Fix malformed RST in release notes; NFC
Commit: 01d28c1cd7862fb75c8e353b2b18d13f9801b327
https://github.com/llvm/llvm-project/commit/01d28c1cd7862fb75c8e353b2b18d13f9801b327
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
A clang/test/SemaCXX/unused-bindings.cpp
M clang/test/SemaCXX/unused.cpp
Log Message:
-----------
[Clang] emit -Wunused-variable warning for unused structured bindings without the [[maybe_unused]] attribute (#127061)
Fixes #125810
---
This patch resolves an issue in Clang where the `-Wunused-variable`
warning was suppressed for structured bindings with elements marked
`[[maybe_unused]]`, causing the entire declaration to be treated as used
and preventing the warning from being emitted.
Commit: 93afd8f9ac69d08bd743ef668c59403362c05d7a
https://github.com/llvm/llvm-project/commit/93afd8f9ac69d08bd743ef668c59403362c05d7a
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/test/CIR/CodeGen/array.cpp
M clang/test/CIR/CodeGen/basic.c
M clang/test/CIR/CodeGen/basic.cpp
M clang/test/CIR/CodeGen/cast.cpp
M clang/test/CIR/CodeGen/local-vars.cpp
M clang/test/CIR/CodeGen/unary-expr-or-type-trait.cpp
M clang/test/CIR/CodeGen/unary.cpp
M clang/test/CIR/IR/array.cir
M clang/test/CIR/IR/cast.cir
M clang/test/CIR/IR/func.cir
M clang/test/CIR/IR/global-var-linkage.cir
M clang/test/CIR/IR/global.cir
M clang/test/CIR/Lowering/func-simple.cpp
M clang/test/CIR/Transforms/canonicalize.cir
M clang/test/CIR/Transforms/scope.cir
M clang/test/CIR/func-simple.cpp
M clang/test/CIR/global-var-simple.cpp
M clang/test/CIR/mlprint.c
M clang/test/CMakeLists.txt
Log Message:
-----------
[CIR] Upstream support for type aliases (#131912)
CIR uses aliases for standard integer types and void. This change adds
upstream support for those aliases and updates existing tests.
Commit: fecd937910f640663885e0434bfed80cf4574072
https://github.com/llvm/llvm-project/commit/fecd937910f640663885e0434bfed80cf4574072
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/include/clang/AST/ExprCXX.h
M clang/lib/AST/ExprCXX.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/SemaCXX/builtin-structured-binding-size.cpp
Log Message:
-----------
[Clang] Fix UB in #131515 (#132091)
It turns out trailing objects are uninitialized
and APValue assignment operator requires a fully initialized object.
Additionally, do some drive-by post-commit-review fixes.
Commit: 2e13ec561c8139951e3f0815c35c758a7a3011db
https://github.com/llvm/llvm-project/commit/2e13ec561c8139951e3f0815c35c758a7a3011db
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/vplan-widen-call-instruction.ll
M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
Log Message:
-----------
[VPlan] Bail out on non-intrinsic calls in VPlanNativePath.
Update initial VPlan-construction in VPlanNativePath in line with the
inner loop path, in that it bails out when encountering constructs it
cannot handle, like non-intrinsic calls.
Fixes https://github.com/llvm/llvm-project/issues/131071.
Commit: 4c36c425ec7d4decd177cedc9609154e12b98f27
https://github.com/llvm/llvm-project/commit/4c36c425ec7d4decd177cedc9609154e12b98f27
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M libc/test/UnitTest/ErrnoSetterMatcher.h
M libc/test/src/sys/socket/linux/CMakeLists.txt
M libc/test/src/sys/socket/linux/bind_test.cpp
M libc/test/src/sys/socket/linux/send_recv_test.cpp
M libc/test/src/sys/socket/linux/sendmsg_recvmsg_test.cpp
M libc/test/src/sys/socket/linux/sendto_recvfrom_test.cpp
M libc/test/src/sys/socket/linux/socket_test.cpp
M libc/test/src/sys/socket/linux/socketpair_test.cpp
M utils/bazel/llvm-project-overlay/libc/test/src/sys/socket/BUILD.bazel
Log Message:
-----------
[libc] Migrate sys/socket tests to use ErrnoCheckingTest. (#132107)
Also use ErrnoSetterMatcher to verify the function return values and
verify/clear out errno values. Fix the bug in ErrnoSetterMatcher error
reporting machinery to properly convert errno values into errno names to
make error messages easier to debug.
Commit: 5ac8c52a61dcea1a480e3f9d1d04b3e00a72b4fb
https://github.com/llvm/llvm-project/commit/5ac8c52a61dcea1a480e3f9d1d04b3e00a72b4fb
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
M llvm/test/MC/RISCV/rv64c-aliases-valid.s
M llvm/test/MC/RISCV/rvc-aliases-valid.s
Log Message:
-----------
[RISCV] Correct the register class in the C_SWSP and C_SDSP InstAliases. (#132086)
These instructions use GPR not GPRNoX0. Only the load forms prohibit X0.
Commit: 0dcc201ac410fed1595d4c8cabe6f9919598e208
https://github.com/llvm/llvm-project/commit/0dcc201ac410fed1595d4c8cabe6f9919598e208
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/IPO/GlobalDCE.cpp
M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
M llvm/lib/Transforms/Instrumentation/BlockCoverageInference.cpp
M llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
M llvm/lib/Transforms/Instrumentation/SanitizerBinaryMetadata.cpp
M llvm/lib/Transforms/ObjCARC/PtrState.cpp
M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/GVNSink.cpp
M llvm/lib/Transforms/Scalar/LoopDistribute.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/LoopSink.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/NewGVN.cpp
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
M llvm/lib/Transforms/Utils/IRNormalizer.cpp
M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
Log Message:
-----------
[Transforms] Use *Set::insert_range (NFC) (#132056)
DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range. This patch replaces:
Dest.insert(Src.begin(), Src.end());
with:
Dest.insert_range(Src);
This patch does not touch custom begin like succ_begin for now.
Commit: 214f5582c324c48470fe5f70e969a6ae61355976
https://github.com/llvm/llvm-project/commit/214f5582c324c48470fe5f70e969a6ae61355976
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZclsd.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
A llvm/test/MC/RISCV/rv32zclsd-alias-valid.c
A llvm/test/MC/RISCV/rv32zilsd-alias-valid.s
Log Message:
-----------
[RISCV] Add ($rs1) InstAliases with no immediate for Zilsd/Zclsd. (#132094)
This matches what we do for other loads and stores.
Commit: f157365a0b0f1dab12f7e8fcbf603a232e611792
https://github.com/llvm/llvm-project/commit/f157365a0b0f1dab12f7e8fcbf603a232e611792
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/www/cxx_dr_status.html
M clang/www/make_cxx_dr_status
Log Message:
-----------
[clang][NFC] Bump latest release number for C++ DR status page
Commit: 2e5a751ee95026dab7056f779e4df3fc75e8803a
https://github.com/llvm/llvm-project/commit/2e5a751ee95026dab7056f779e4df3fc75e8803a
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lldb/tools/lldb-dap/CMakeLists.txt
Log Message:
-----------
[lldb-dap] Stop linking explicitly against pthread (#132111)
I can't figure out why this would be necessary. Nothing is checking if
libpthread is available, nothing in lldb-dap is relying on libpthread
directly and nothing else in LLDB is doing this.
Commit: 6cc918089a722d837777da44350901a24ab88304
https://github.com/llvm/llvm-project/commit/6cc918089a722d837777da44350901a24ab88304
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
Log Message:
-----------
[AMDGPU] Autogen checks for mfma-no-register-aliasing.ll (#132117)
For an upcoming RegisterCoalescer PR
Commit: 86fc897442f832823011e489aa03e4585a79296f
https://github.com/llvm/llvm-project/commit/86fc897442f832823011e489aa03e4585a79296f
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lld/MachO/Config.h
M lld/MachO/Driver.cpp
M lld/MachO/LTO.cpp
M lld/MachO/Options.td
A lld/test/MachO/verify.ll
Log Message:
-----------
[lld][MachO] Add --disable_verify flag (#132105)
The `--disable_verify` flag is implemented for ELF and is used to
disable LLVM module verification.
https://github.com/llvm/llvm-project/blob/93afd8f9ac69d08bd743ef668c59403362c05d7a/lld/ELF/Options.td#L661
This allows us to quickly suppress verification errors.
Commit: 09b0e5624c7673cffd84a497c4b6ac7a41c59269
https://github.com/llvm/llvm-project/commit/09b0e5624c7673cffd84a497c4b6ac7a41c59269
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.cpp
M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.h
Log Message:
-----------
[lldb] Add RegisterCheckpoint overload for register methods in RegisterContextThreadMemory (#132079)
Commit: 77ac5a2d57f207f173734cee2dfe652a2c2ae418
https://github.com/llvm/llvm-project/commit/77ac5a2d57f207f173734cee2dfe652a2c2ae418
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang-tools-extra/test/clang-doc/basic-project.test
Log Message:
-----------
[clang-doc] Enable MD tests in basic-project (#131924)
For some reason the MD tests don't appear to have ever run, despite
having checks. This patch adds a new set of RUN lines that will
exercise the markdown generation.
Commit: be9b7a14f4f9bfddd02672a13e7da51b39ba25de
https://github.com/llvm/llvm-project/commit/be9b7a14f4f9bfddd02672a13e7da51b39ba25de
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ASTContext.cpp
M clang/test/SemaCXX/sugar-common-types.cpp
Log Message:
-----------
[clang] ASTContext: flesh out implementation of getCommonNNS (#131964)
This properly implements getCommonNNS, for getting the common
NestedNameSpecifier, for which the previous implementation was a bare
minimum placeholder.
Commit: de2a451058730c932dd34cda8709ba64730a9124
https://github.com/llvm/llvm-project/commit/de2a451058730c932dd34cda8709ba64730a9124
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
Log Message:
-----------
[ARM] Use MCPhysReg instead of uint16_t for arrays of registers. NFC
Commit: c50d39f073f3b0143b781be80764d183ddab88d4
https://github.com/llvm/llvm-project/commit/c50d39f073f3b0143b781be80764d183ddab88d4
Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
R clang/test/Driver/cuda-no-pgo-or-coverage.cu
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/profile/InstrProfilingBuffer.c
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/profile/InstrProfilingInternal.h
M compiler-rt/lib/profile/InstrProfilingWriter.c
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
M offload/plugins-nextgen/common/include/GlobalHandler.h
M offload/plugins-nextgen/common/src/GlobalHandler.cpp
A offload/test/offloading/gpupgo/pgo1.c
A offload/test/offloading/gpupgo/pgo2.c
R offload/test/offloading/pgo1.c
Log Message:
-----------
[PGO][Offload] Allow PGO flags to be used on GPU targets (#94268)
This pull request is the third part of an ongoing effort to extends PGO
instrumentation to GPU device code and depends on
https://github.com/llvm/llvm-project/pull/93365. This PR makes the
following changes:
- Allows PGO flags to be supplied to GPU targets
- Pulls version global from device
- Modifies `__llvm_write_custom_profile` and `lprofWriteDataImpl` to
allow the PGO version to be overridden
Commit: 2c91f10362502ebfb464691cdde1ba05be7cb50e
https://github.com/llvm/llvm-project/commit/2c91f10362502ebfb464691cdde1ba05be7cb50e
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M flang/docs/ArrayRepacking.md
M flang/lib/Lower/ConvertVariable.cpp
A flang/test/Lower/repack-arrays-asynchronous.f90
A flang/test/Lower/repack-arrays-finalized-dummy.f90
A flang/test/Lower/repack-arrays-target.f90
Log Message:
-----------
[flang] Fixed repacking for TARGET and INTENT(OUT) (#131972)
TARGET dummy arrays can be accessed indirectly, so it is unsafe
to repack them.
INTENT(OUT) dummy arrays that require finalization on entry
to their subroutine must be copied-in by `fir.pack_arrays`.
In addition, based on my testing results, I think it will be useful
to document that `LOC` and `IS_CONTIGUOUS` will have different values
for the repacked arrays. I still need to decide where to document
this, so just added a note in the design doc for the time being.
Commit: fd7be0d2e9e2cb7d43c9cb97edbb36da59a5b595
https://github.com/llvm/llvm-project/commit/fd7be0d2e9e2cb7d43c9cb97edbb36da59a5b595
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/Type.cpp
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaStmt.cpp
Log Message:
-----------
[clang] NFC: Clear some uses of MemberPointerType::getClass (#131965)
Commit: 08dda4dcbf6427e357830d9c7f7ac3b422fc75f6
https://github.com/llvm/llvm-project/commit/08dda4dcbf6427e357830d9c7f7ac3b422fc75f6
Author: vporpo <vporpodas at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
A llvm/include/llvm/Analysis/EphemeralValuesCache.h
M llvm/include/llvm/Analysis/InlineCost.h
M llvm/lib/Analysis/CMakeLists.txt
A llvm/lib/Analysis/EphemeralValuesCache.cpp
M llvm/lib/Analysis/InlineAdvisor.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/IPO/Inliner.cpp
M llvm/test/Transforms/Inline/cgscc-incremental-invalidate.ll
M llvm/unittests/Analysis/CMakeLists.txt
A llvm/unittests/Analysis/EphemeralValuesCacheTest.cpp
Log Message:
-----------
[Analysis][EphemeralValuesCache][InlineCost] Ephemeral values caching for the CallAnalyzer (#130210)
This patch does two things:
1. It implements an ephemeral values cache analysis pass that collects the ephemeral values of a function and caches them for fast lookups. The collection of the ephemeral values is done lazily when the user calls `EphemeralValuesCache::ephValues()`.
2. It adds caching of ephemeral values using the `EphemeralValuesCache` to speed up `CallAnalyzer::analyze()`. Without caching this can take a long time to run in cases where the function contains a large number of `@llvm.assume()` calls and a large number of callsites. The time is spent in `collectEphemeralvalues()`.
Commit: ead272460004519ccbd98d08d68c70123892cd4e
https://github.com/llvm/llvm-project/commit/ead272460004519ccbd98d08d68c70123892cd4e
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M mlir/lib/Dialect/SCF/Transforms/LoopPipelining.cpp
M mlir/test/Dialect/SCF/loop-pipelining.mlir
Log Message:
-----------
[mlir][scf] Fix a div-by-zero bug when step of `scf.for` is zero (#131079)
Fixes #130095.
Commit: 6003c3055a4630be31cc3d459cdbb88248a007b9
https://github.com/llvm/llvm-project/commit/6003c3055a4630be31cc3d459cdbb88248a007b9
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOverload.cpp
Log Message:
-----------
[clang] NFC: Unify implementations of CheckMemberPointerConversion (#131966)
This deduplicates the implementation of CheckMemberPointerConversion
accross SemaCast and SemaOverload.
Commit: c3e16337a47355225f3d8ea467bf4bd4bb74c4cd
https://github.com/llvm/llvm-project/commit/c3e16337a47355225f3d8ea467bf4bd4bb74c4cd
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/revec-reduced-value-replace-extractelement.ll
Log Message:
-----------
[SLP][REVEC] Ignore UserTreeIndex if it is empty. (#131993)
Previously, the all_of check did not consider the case where the
TreeEntry is empty (i.e., when it is the first entry).
Commit: 5946696d6769e8190eb9e0860b5cac85eafd7951
https://github.com/llvm/llvm-project/commit/5946696d6769e8190eb9e0860b5cac85eafd7951
Author: Thurston Dang <thurston at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-ld1.ll
Log Message:
-----------
[msan] Handle NEON vector load (#130457)
This adds an explicit handler for:
- llvm.aarch64.neon.ld1x2, llvm.aarch64.neon.ld1x3,
llvm.aarch64.neon.ld1x4
- llvm.aarch64.neon.ld2, llvm.aarch64.neon.ld3, llvm.aarch64.neon.ld4
- llvm.aarch64.neon.ld2lane, llvm.aarch64.neon.ld3lane,
llvm.aarch64.neon.ld4lane
- llvm.aarch64.neon.ld2r, llvm.aarch64.neon.ld3r, llvm.aarch64.neon.ld4r
instead of relying on the default strict handler.
Updates the tests from https://github.com/llvm/llvm-project/pull/125267
Commit: 9cab82fde844073a280662d719d93352b9d7102b
https://github.com/llvm/llvm-project/commit/9cab82fde844073a280662d719d93352b9d7102b
Author: John McIver <john.mciver.iii at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/freeze-phi.ll
M llvm/test/Transforms/InstCombine/freeze.ll
M llvm/test/Transforms/InstCombine/select.ll
Log Message:
-----------
[InstCombine] Enable select freeze poison folding when storing value (#129776)
The non-freeze poison argument to select can be one of the following: global,
constant, and noundef arguments.
Alive2 test validation: https://alive2.llvm.org/ce/z/jbtCS6
Commit: d0d33d2b5ba3369d4a5586234181055935965e49
https://github.com/llvm/llvm-project/commit/d0d33d2b5ba3369d4a5586234181055935965e49
Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/docs/DirectX/DXContainer.rst
Log Message:
-----------
[DirectX] Documenting Root Signature Binary representation (#131011)
Closes: #131009, #129796, #129749, #129561
---------
Co-authored-by: joaosaffran <joao.saffran at microsoft.com>
Commit: d99033e4b4081bc47510c451b618ef93fe2f3c62
https://github.com/llvm/llvm-project/commit/d99033e4b4081bc47510c451b618ef93fe2f3c62
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/lib/LTO/LTO.cpp
A llvm/test/ThinLTO/X86/devirt_prevailing.ll
M llvm/tools/llvm-lto2/llvm-lto2.cpp
Log Message:
-----------
[LTO][WPD] Suppress WPD on a class if the LTO unit doesn't have the prevailing definition of this class (#131721)
Before this patch, whole program devirtualization is suppressed on a
class if any superclass is visible to regular object files, by recording
the class GUID in `VisibleToRegularObjSymbols`.
This patch suppresses whole program devirtualization on a class if the
LTO unit doesn't have the prevailing definition of this class (e.g., the
prevailing definition is in a shared library)
Implementation summaries:
1. In llvm/lib/LTO/LTO.cpp, `IsVisibleToRegularObj` is updated to look
at the global resolution's `IsPrevailing` bit for ThinLTO and
regularLTO.
2. In llvm/tools/llvm-lto2/llvm-lto2.cpp,
- three command line options are added so `llvm-lto2` can override
`Conf.HasWholeProgramVisibility`, `Conf.ValidateAllVtablesHaveTypeInfos`
and `Conf.AllVtablesHaveTypeInfos`.
The test case is reduced from a small C++ program (main.cc, lib.cc/h
pasted below in [1]). To reproduce the program failure without this
patch, compile lib.cc into a shared library, and provide it to a ThinLTO
build of main.cc (commands are pasted in [2]).
[1]
* lib.h
```
#include <cstdio>
class Derived {
public:
void dispatch();
virtual void print();
virtual void sum();
};
void Derived::dispatch() {
static_cast<Derived*>(this)->print();
static_cast<Derived*>(this)->sum();
}
void Derived::sum() {
printf("Derived::sum\n");
}
__attribute__((noinline)) void* create(int i);
__attribute__((noinline)) void* getPtr(int i);
```
* lib.cc
```
#include "lib.h"
#include <cstdio>
#include <iostream>
class Derived2 : public Derived {
public:
void print() override {
printf("DerivedSharedLib\n");
}
void sum() override {
printf("DerivedSharedLib::sum\n");
}
};
void Derived::print() {
printf("Derived\n");
}
__attribute__((noinline)) void* create(int i) {
if (i & 1)
return new Derived2();
return new Derived();
}
```
* main.cc
```
cat main.cc
#include "lib.h"
class DerivedN : public Derived {
public:
};
__attribute__((noinline)) void* getPtr(int x) {
return new DerivedN();
}
int main() {
Derived*b = static_cast<Derived*>(create(201));
b->dispatch();
delete b;
Derived* a = static_cast<Derived*>(getPtr(202));
a->dispatch();
delete a;
return 0;
}
```
[2]
```
# compile lib.o in a shared library.
$ ./bin/clang++ -O2 -fPIC -c lib.cc -o lib.o
$ ./bin/clang++ -shared -o libdata.so lib.o
# Provide the shared library in `-ldata`
$ ./bin/clang++ -v -g -ldata --save-temps -fno-discard-value-names -Wl,-mllvm,-print-before=wholeprogramdevirt -Wl,-mllvm,-wholeprogramdevirt-check=trap -Rpass=wholeprogramdevirt -Wl,--lto-whole-program-visibility -Wl,--lto-validate-all-vtables-have-type-infos -mllvm -disable-icp=true -Wl,-mllvm,-disable-icp=false -flto=thin -fwhole-program-vtables -fno-split-lto-unit -fuse-ld=lld main.cc -L . -o main >/tmp/wholeprogramdevirt.ir 2>&1
# Run the program hits a segmentation fault with `-Wl,-mllvm,-wholeprogramdevirt-check=trap`
$ LD_LIBRARY_PATH=. ./main
DerivedSharedLib
Trace/breakpoint trap (core dumped)
```
Commit: 460c0f567cc83378d4aafd9fba95561bacf57fe4
https://github.com/llvm/llvm-project/commit/460c0f567cc83378d4aafd9fba95561bacf57fe4
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M lldb/include/lldb/Host/HostInfoBase.h
M lldb/include/lldb/Host/macosx/HostInfoMacOSX.h
M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
M lldb/unittests/Host/HostInfoTest.cpp
M lldb/unittests/Platform/PlatformDarwinTest.cpp
Log Message:
-----------
[lldb] Move two methods from Platfrom -> Host (NFC) (#132119)
This moves two functions from Platform to Host:
1. GetCurrentXcodeToolchainDirectory
2. GetCurrentCommandLineToolsDirectory.
These two functions caused a layering violation in the Swift fork, which
added a dependency from lldbHost to lldbPlatform. As show by this PR,
there's no need for these two functions to live in Platform, and we
already have similar functions in Host.
We have various layering violations but this one is particularly bad,
because lldb-dap started depending on lldbHost. On the Swift fork, this
library was depending on lldbPlatform which pulled in various Swift
files, which libLLDB needs, but lldb-dap itself does not. We were
missing RPATHs to resume them, so in the current nightly, lldb-dap
crashes because the dynamic loader can't find the missing Swift libs.
rdar://146537366
Commit: 0744d4926a0c567b0f10d19f0478b7a4bf960a19
https://github.com/llvm/llvm-project/commit/0744d4926a0c567b0f10d19f0478b7a4bf960a19
Author: quic_hchandel <quic_hchandel at quicinc.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
A llvm/test/MC/RISCV/xqcilb-invalid.s
A llvm/test/MC/RISCV/xqcilb-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add Qualcomm uC Xqcilb (Long Branch) extension (#131996)
This extension adds two long branch instructions.
The current spec can be found at:
https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.7.0
This patch adds assembler only support.
Co-authored-by: Sudharsan Veeravalli <quic_svs at quicinc.com>
Commit: b44b72e122c6068e4d8aae37f10572f0d2c3e112
https://github.com/llvm/llvm-project/commit/b44b72e122c6068e4d8aae37f10572f0d2c3e112
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M llvm/test/MC/RISCV/corev/XCVmem-invalid.s
Log Message:
-----------
[RISCV] Check line and column numbers for errors in XCVmem-invalid.s. NFC
I was trying a change that caused some of the error messages in this
test to change. I was having trouble updating the test because FileCheck
kept scanning ahead when I missed updating a line. Checking the line number
should make it easier to update.
Commit: 9cdbc47144f28785133592b1ae219cb49b9ac61d
https://github.com/llvm/llvm-project/commit/9cdbc47144f28785133592b1ae219cb49b9ac61d
Author: Mythreya <git at mythreya.dev>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/CodeComplete.h
M clang-tools-extra/clangd/Config.h
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/ConfigFragment.h
M clang-tools-extra/clangd/ConfigYAML.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
Log Message:
-----------
[clangd] Add `HeaderInsertion` config option (#128503)
This is the config file equivalent of the `--header-insertion` command line option
Fixes https://github.com/clangd/clangd/issues/2032
Commit: 4254f2777cd3dccf160c79e36ce091d58b4e99c1
https://github.com/llvm/llvm-project/commit/4254f2777cd3dccf160c79e36ce091d58b4e99c1
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/tools/llc/NewPMDriver.cpp
Log Message:
-----------
[CodeGen][NPM] Parse MachineFunctions in NPM driver (#128467)
MachineFunctions were not being parsed when target is allowed to build
the pipeline.
This will allow us to use `-start-before` and other options.
Commit: 6df192c02ea41d1d918fa96c6df174f76e4fc259
https://github.com/llvm/llvm-project/commit/6df192c02ea41d1d918fa96c6df174f76e4fc259
Author: David Green <david.green at arm.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/arm64-neon-mul-div-cte.ll
M llvm/test/CodeGen/AArch64/arm64-vabs.ll
M llvm/test/CodeGen/AArch64/sext.ll
A llvm/test/CodeGen/AArch64/trunc.ll
M llvm/test/CodeGen/AArch64/zext.ll
Log Message:
-----------
[AArch64] Addition gisel tests for udiv by constant and zext/sext/trunc. NFC
Commit: 0e6ea0945e64d26a89ec8a9e770578726eda1f9f
https://github.com/llvm/llvm-project/commit/0e6ea0945e64d26a89ec8a9e770578726eda1f9f
Author: David Green <david.green at arm.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/arm64-neon-mul-div-cte.ll
M llvm/test/CodeGen/AArch64/arm64-vabs.ll
M llvm/test/CodeGen/AArch64/sext.ll
M llvm/test/CodeGen/AArch64/zext.ll
Log Message:
-----------
[AArch64][GlobalISel] Scalarize zext with larger than i64 elements.
Like other operations larger than i64, we scalarize i128 and allow them to
legalize from there. This also helps with v2i64 udiv by constant, which needs a
legalize a umulh.
Commit: 7c6479021382b5cf16619f0089b9d86536630e26
https://github.com/llvm/llvm-project/commit/7c6479021382b5cf16619f0089b9d86536630e26
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
Log Message:
-----------
[CIR] Follow up for addressing style comment (#132093)
Follow up PR to address style comment
(https://github.com/llvm/llvm-project/pull/131657#discussion_r2004197917)
Commit: 53a395fda32cb0edd899202b6614595185b01ef1
https://github.com/llvm/llvm-project/commit/53a395fda32cb0edd899202b6614595185b01ef1
Author: David Green <david.green at arm.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/ctpop.ll
M llvm/test/CodeGen/AArch64/cttz.ll
Log Message:
-----------
[AArch64][GlobalISel] Legalize more CTPOP vector types. (#131513)
Similar to other operations, s8, s16 s32 and s64 vector elements are
clamped to legal vector sizes, odd number of elements are widened to the
next power-2 and s128 is scalarized.
This helps legalize cttz as well as ctpop.
Commit: e17b3cdfb3626e03cdefaad42db1e2374da9e9ca
https://github.com/llvm/llvm-project/commit/e17b3cdfb3626e03cdefaad42db1e2374da9e9ca
Author: Diana Picus <Diana-Magda.Picus at amd.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAGISel.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp
A llvm/test/CodeGen/AMDGPU/amdgcn-cs-chain-intrinsic-dyn-vgpr-w32.ll
M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w32.ll
M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w64.ll
A llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-intrinsic-dyn-vgpr-w32.ll
A llvm/test/CodeGen/AMDGPU/remove-register-flags.mir
A llvm/test/CodeGen/AMDGPU/unsupported-cs-chain.ll
Log Message:
-----------
[AMDGPU] Dynamic VGPR support for llvm.amdgcn.cs.chain (#130094)
The llvm.amdgcn.cs.chain intrinsic has a 'flags' operand which may
indicate that we want to reallocate the VGPRs before performing the
call.
A call with the following arguments:
```
llvm.amdgcn.cs.chain %callee, %exec, %sgpr_args, %vgpr_args,
/*flags*/0x1, %num_vgprs, %fallback_exec, %fallback_callee
```
is supposed to do the following:
- copy the SGPR and VGPR args into their respective registers
- try to change the VGPR allocation
- if the allocation has succeeded, set EXEC to %exec and jump to
%callee, otherwise set EXEC to %fallback_exec and jump to
%fallback_callee
This patch implements the dynamic VGPR behaviour by generating an
S_ALLOC_VGPR followed by S_CSELECT_B32/64 instructions for the EXEC and
callee. The rest of the call sequence is left undisturbed (i.e.
identical to the case where the flags are 0 and we don't use dynamic
VGPRs). We achieve this by introducing some new pseudos
(SI_CS_CHAIN_TC_Wn_DVGPR) which are expanded in the SILateBranchLowering
pass, just like the simpler SI_CS_CHAIN_TC_Wn pseudos. The main reason
is so that we don't risk other passes (particularly the PostRA
scheduler) introducing instructions between the S_ALLOC_VGPR and the
jump. Such instructions might end up using VGPRs that have been
deallocated, or the wrong EXEC mask. Once the whole backend treats
S_ALLOC_VGPR and changes to EXEC as barriers for instructions that use
VGPRs, we could in principle move the expansion earlier (but in the
absence of a good reason for that my personal preference is to keep it
later in order to make debugging easier).
Since the expansion happens after register allocation, we're careful to
select constants to immediate operands instead of letting ISel generate
S_MOVs which could interfere with register allocation (i.e. make it look
like we need more registers than we actually do).
For GFX12, S_ALLOC_VGPR only works in wave32 mode, so we bail out during
ISel in wave64 mode. However, we can define the pseudos for wave64 too
so it's easy to handle if future generations support it.
---------
Co-authored-by: Ana Mihajlovic <Ana.Mihajlovic at amd.com>
Co-authored-by: Matt Arsenault <Matthew.Arsenault at amd.com>
Commit: bf5cdd6358e8fc45319b748693090b5885beecee
https://github.com/llvm/llvm-project/commit/bf5cdd6358e8fc45319b748693090b5885beecee
Author: Stephan T. Lavavej <stl at nuwen.net>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp
M libcxx/test/std/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp
M libcxx/test/std/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp
M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
M libcxx/test/std/containers/sequences/array/assert.iterators.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/max_size.pass.cpp
M libcxx/test/std/containers/sequences/vector/vector.modifiers/assert.push_back.invalidation.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ifstream.members/offset_range.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/no_file_description.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.gcd/gcd.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.utc/types.compile.pass.cpp
M libcxx/test/std/utilities/utility/utility.swap/swap_array.pass.cpp
M libcxx/test/support/min_allocator.h
M libcxx/test/support/sized_allocator.h
Log Message:
-----------
[libc++][test] Fix issues found by MSVC's STL (#131787)
* libcxx/test/support/min_allocator.h
+ Fix `tiny_size_allocator::rebind` which mistakenly said `T` instead of
`U`.
*
libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp
+ `std::stable_partition` requires bidirectional iterators.
* libcxx/test/std/containers/sequences/vector.bool/max_size.pass.cpp
+ Fix allocator type given to `std::vector<bool>`. The element types are
required to match, [N5008](https://isocpp.org/files/papers/N5008.pdf)
\[container.alloc.reqmts\]/5: "*Mandates:* `allocator_type::value_type`
is the same as `X::value_type`."
* libcxx/test/std/time/time.clock/time.clock.utc/types.compile.pass.cpp
+ Mark `is_steady` as `[[maybe_unused]]`, as it appears within
`LIBCPP_STATIC_ASSERT` only.
*
libcxx/test/std/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp
*
libcxx/test/std/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp
* libcxx/test/std/utilities/utility/utility.swap/swap_array.pass.cpp
+ Fix MSVC warning C4127 "conditional expression is constant".
`TEST_STD_AT_LEAST_23_OR_RUNTIME_EVALUATED` was introduced for this
purpose, so it should be used consistently.
* libcxx/test/std/numerics/numeric.ops/numeric.ops.gcd/gcd.pass.cpp
+ Fix `gcd()` precondition violation for `signed char`. This test case
was causing `-128` to be passed as a `signed char` to `gcd()`, which is
forbidden.
* libcxx/test/std/containers/sequences/array/assert.iterators.pass.cpp
*
libcxx/test/std/containers/sequences/vector/vector.modifiers/assert.push_back.invalidation.pass.cpp
*
libcxx/test/std/input.output/iostream.format/print.fun/no_file_description.pass.cpp
+ Split some REQUIRES and XFAIL lines. This is a "nice to have" for
MSVC's internal test harness, which is extremely simple and looks for
exact comment matches to skip tests. We can recognize the specific lines
"REQUIRES: has-unix-headers" and "XFAIL: msvc", but it's a headache to
maintain if they're chained with other conditions.
* libcxx/test/support/sized_allocator.h
+ Fix x86 truncation warnings. `std::allocator` takes `std::size_t`, so
we need to `static_cast`.
*
libcxx/test/std/input.output/file.streams/fstreams/ifstream.members/offset_range.pass.cpp
+ Fix x86 truncation warning. `std::min()` is returning
`std::streamoff`, which was being unnecessarily narrowed to
`std::size_t`.
*
libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
+ Fix MSVC warning C4127 "conditional expression is constant" for an
always-true branch. This was very recently introduced by #129008 making
`N` constexpr. As it's a local constant just nine lines above, we don't
need to test whether 100 is greater than 0.
Commit: 14006c8b5be12d24d8af2ff4bf4d152b1a2306f5
https://github.com/llvm/llvm-project/commit/14006c8b5be12d24d8af2ff4bf4d152b1a2306f5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp
Log Message:
-----------
[AMDGPU] Fix a warning
This patch fixes:
llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp:173:64: error:
comparison of integers of different signs: 'unsigned int' and 'int'
[-Werror,-Wsign-compare]
Commit: b3b5527baaeceb923e9bb698f52883a1506f1b25
https://github.com/llvm/llvm-project/commit/b3b5527baaeceb923e9bb698f52883a1506f1b25
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M lldb/include/lldb/Symbol/UnwindPlan.h
M lldb/source/Plugins/ABI/AArch64/ABIMacOSX_arm64.cpp
M lldb/source/Plugins/ABI/AArch64/ABISysV_arm64.cpp
M lldb/source/Plugins/ABI/ARC/ABISysV_arc.cpp
M lldb/source/Plugins/ABI/ARM/ABIMacOSX_arm.cpp
M lldb/source/Plugins/ABI/ARM/ABISysV_arm.cpp
M lldb/source/Plugins/ABI/Hexagon/ABISysV_hexagon.cpp
M lldb/source/Plugins/ABI/LoongArch/ABISysV_loongarch.cpp
M lldb/source/Plugins/ABI/MSP430/ABISysV_msp430.cpp
M lldb/source/Plugins/ABI/Mips/ABISysV_mips.cpp
M lldb/source/Plugins/ABI/Mips/ABISysV_mips64.cpp
M lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc.cpp
M lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc64.cpp
M lldb/source/Plugins/ABI/RISCV/ABISysV_riscv.cpp
M lldb/source/Plugins/ABI/SystemZ/ABISysV_s390x.cpp
M lldb/source/Plugins/ABI/X86/ABIMacOSX_i386.cpp
M lldb/source/Plugins/ABI/X86/ABISysV_i386.cpp
M lldb/source/Plugins/ABI/X86/ABISysV_x86_64.cpp
M lldb/source/Plugins/ABI/X86/ABIWindows_x86_64.cpp
M lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
M lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.cpp
M lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp
M lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp
M lldb/source/Plugins/Instruction/PPC64/EmulateInstructionPPC64.cpp
M lldb/source/Symbol/UnwindPlan.cpp
Log Message:
-----------
[lldb] Use UnwindPlan::Row as values, part 2 (#132008)
This is the mechanical part of #131150.
I'm also removing the interfaces taking a RowSP.
Commit: d4b586ad95d7a2d13e49c5e9cee8c5d6611efccb
https://github.com/llvm/llvm-project/commit/d4b586ad95d7a2d13e49c5e9cee8c5d6611efccb
Author: Kon <kinsei0916 at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M lldb/docs/use/python-reference.rst
Log Message:
-----------
[LLDB][NFC] Fix typo in docs (#131388)
Commit: 0738f706151b41063d09b2dc349cabd471b2476e
https://github.com/llvm/llvm-project/commit/0738f706151b41063d09b2dc349cabd471b2476e
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.h
M llvm/lib/CodeGen/ExpandVectorPredication.cpp
M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/TableGen/intrinsic-attrs.td
M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
Log Message:
-----------
[Intrinsics] Add Intrinsic::getFnAttributes() (NFC) (#132029)
Most places that call Intrinsic::getAttributes() are only interested in
the function attributes, so add a separate function for that.
The motivation for this is that I'd like to add the ability to specify
range attributes on intrinsics, which requires knowing the function
type. This avoids needing to know the type for most attribute queries.
Commit: 01f04252b6711e281d9569172302ec20789e9bbe
https://github.com/llvm/llvm-project/commit/01f04252b6711e281d9569172302ec20789e9bbe
Author: Luke Lau <luke at igalia.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm/IR/VectorBuilder.h
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[LV] Get FMFs from VectorBuilder in createSimpleReduction. NFC (#132017)
The other createSimpleReduction takes the FMFs from the IRBuilder, so
this aligns the VectorBuilder variant to do the same and reduce the
possibility of there being a mismatch in flags.
Commit: 750e716ef04ec33c8abc83d95d9c271009557c4a
https://github.com/llvm/llvm-project/commit/750e716ef04ec33c8abc83d95d9c271009557c4a
Author: Mike Aizatsky <mike.aizatsky at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm-c/Core.h
Log Message:
-----------
[capi][nfc] Reference Function::getFunctionType in LLVMGlobalGetValueType (#132102)
Commit: 64555e3d48223c4c5a851f0cbe0278ec6f2241ba
https://github.com/llvm/llvm-project/commit/64555e3d48223c4c5a851f0cbe0278ec6f2241ba
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
Log Message:
-----------
[X86][NFCI] Add IsStore parameter to hasConditionalLoadStoreForType (#132153)
Address
https://github.com/llvm/llvm-project/pull/132032#issuecomment-2736936769
Commit: f5ee10538b68835112323c241ca7db67ca78bf62
https://github.com/llvm/llvm-project/commit/f5ee10538b68835112323c241ca7db67ca78bf62
Author: Ivana Ivanovska <iivanovska at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/Analysis/UnsafeBufferUsage.cpp
Log Message:
-----------
[Clang] Optimize -Wunsafe-buffer-usage. (#125492)
The Clang disgnostic `-Wunsafe-buffer-usage` was adding up to +15%
compilation time when used. Profiling showed that most of the overhead
comes from the use of ASTMatchers.
This change replaces the ASTMatcher infrastructure with simple matching
functions and keeps the functionality unchanged. It reduces the overhead
added by `-Wunsafe-buffer-usage` by 87.8%, leaving a negligible
additional compilation time of 1.7% when the diagnostic is used.
**Old version without -Wunsafe-buffer-usage:**
```
$ hyperfine -i -w 1 --runs 5 '/tmp/old_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20'
Benchmark 1: /tmp/old_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20
Time (mean ± σ): 231.035 s ± 3.210 s [User: 229.134 s, System: 1.704 s]
Range (min … max): 228.751 s … 236.682 s 5 runs
```
**Old version with -Wunsafe-buffer-usage:**
```
$ hyperfine -i -w 1 --runs 10 '/tmp/old_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20 -Wunsafe-buffer-usage'
Benchmark 1: /tmp/old_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20 -Wunsafe-buffer-usage
Time (mean ± σ): 263.840 s ± 0.854 s [User: 262.043 s, System: 1.575 s]
Range (min … max): 262.442 s … 265.142 s 10 runs
```
**New version with -Wunsafe-buffer-usage:**
```
$ hyperfine -i -w 1 --runs 10 '/tmp/new_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20 -Wunsafe-buffer-usage'
Benchmark 1: /tmp/new_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20 -Wunsafe-buffer-usage
Time (mean ± σ): 235.169 s ± 1.408 s [User: 233.406 s, System: 1.561 s]
Range (min … max): 232.221 s … 236.792 s 10 runs
```
Commit: 82912fd6200b4f99d3f1b42dc6c08af27c1cba4f
https://github.com/llvm/llvm-project/commit/82912fd6200b4f99d3f1b42dc6c08af27c1cba4f
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M libclc/clc/include/clc/math/clc_subnormal_config.h
M libclc/clc/include/clc/math/math.h
M libclc/clc/include/clc/math/tables.h
M libclc/clc/include/clc/relational/clc_bitselect.h
M libclc/clc/include/clc/relational/clc_bitselect.inc
M libclc/clc/lib/amdgcn/math/clc_ldexp_override.cl
M libclc/clc/lib/amdgpu/math/clc_sqrt_fp64.cl
M libclc/clc/lib/clspv/math/clc_sw_fma.cl
M libclc/clc/lib/generic/common/clc_degrees.cl
M libclc/clc/lib/generic/common/clc_radians.cl
M libclc/clc/lib/generic/common/clc_smoothstep.cl
M libclc/clc/lib/generic/math/clc_frexp.cl
M libclc/clc/lib/generic/math/clc_frexp.inc
M libclc/clc/lib/generic/math/clc_hypot.cl
M libclc/clc/lib/generic/math/clc_hypot.inc
M libclc/clc/lib/generic/math/clc_ldexp.cl
M libclc/clc/lib/generic/math/clc_log10.cl
M libclc/clc/lib/generic/math/clc_log2.cl
M libclc/clc/lib/generic/math/clc_log_base.h
M libclc/clc/lib/generic/math/clc_modf.cl
M libclc/clc/lib/generic/math/clc_modf.inc
M libclc/clc/lib/generic/math/clc_rsqrt.cl
M libclc/clc/lib/generic/math/clc_sqrt.cl
M libclc/clc/lib/generic/math/clc_sqrt.inc
M libclc/clc/lib/generic/math/clc_sw_fma.cl
M libclc/clc/lib/generic/relational/clc_bitselect.cl
M libclc/clc/lib/generic/relational/clc_bitselect.inc
M libclc/clspv/lib/subnormal_config.cl
M libclc/generic/include/clc/common/degrees.h
M libclc/generic/include/clc/common/degrees.inc
M libclc/generic/include/clc/common/radians.h
M libclc/generic/include/clc/common/radians.inc
M libclc/generic/include/clc/common/smoothstep.h
M libclc/generic/include/clc/common/smoothstep.inc
M libclc/generic/include/clc/common/step.h
M libclc/generic/include/clc/common/step.inc
M libclc/generic/include/clc/geometric/distance.inc
M libclc/generic/include/clc/geometric/fast_distance.h
M libclc/generic/include/clc/geometric/fast_distance.inc
M libclc/generic/include/clc/geometric/fast_length.h
M libclc/generic/include/clc/geometric/fast_length.inc
M libclc/generic/include/clc/geometric/fast_normalize.h
M libclc/generic/include/clc/geometric/fast_normalize.inc
M libclc/generic/include/clc/math/acosh.h
M libclc/generic/include/clc/math/acospi.h
M libclc/generic/include/clc/math/asinh.h
M libclc/generic/include/clc/math/asinpi.h
M libclc/generic/include/clc/math/atan.h
M libclc/generic/include/clc/math/atan2.h
M libclc/generic/include/clc/math/atan2pi.h
M libclc/generic/include/clc/math/atanh.h
M libclc/generic/include/clc/math/atanpi.h
M libclc/generic/include/clc/math/cbrt.h
M libclc/generic/include/clc/math/cosh.h
M libclc/generic/include/clc/math/exp2.h
M libclc/generic/include/clc/math/fract.h
M libclc/generic/include/clc/math/fract.inc
M libclc/generic/include/clc/math/half_rsqrt.h
M libclc/generic/include/clc/math/half_sqrt.h
M libclc/generic/include/clc/math/ldexp.h
M libclc/generic/include/clc/math/ldexp.inc
M libclc/generic/include/clc/math/log.h
M libclc/generic/include/clc/math/log1p.h
M libclc/generic/include/clc/math/log2.h
M libclc/generic/include/clc/math/modf.h
M libclc/generic/include/clc/math/native_log.h
M libclc/generic/include/clc/math/native_log2.h
M libclc/generic/include/clc/math/sinh.h
M libclc/generic/include/clc/math/tanh.h
M libclc/generic/include/clc/relational/bitselect.h
M libclc/generic/include/clc/relational/bitselect.inc
M libclc/generic/lib/common/degrees.cl
M libclc/generic/lib/common/radians.cl
M libclc/generic/lib/common/smoothstep.cl
M libclc/generic/lib/common/step.cl
M libclc/generic/lib/geometric/distance.cl
M libclc/generic/lib/geometric/distance.inc
M libclc/generic/lib/geometric/fast_distance.cl
M libclc/generic/lib/geometric/fast_distance.inc
M libclc/generic/lib/geometric/fast_length.cl
M libclc/generic/lib/geometric/fast_normalize.cl
M libclc/generic/lib/geometric/fast_normalize.inc
M libclc/generic/lib/geometric/length.cl
M libclc/generic/lib/geometric/normalize.cl
M libclc/generic/lib/math/acos.cl
M libclc/generic/lib/math/acosh.cl
M libclc/generic/lib/math/acospi.cl
M libclc/generic/lib/math/asin.cl
M libclc/generic/lib/math/asinh.cl
M libclc/generic/lib/math/asinpi.cl
M libclc/generic/lib/math/atan.cl
M libclc/generic/lib/math/atan2.cl
M libclc/generic/lib/math/atan2pi.cl
M libclc/generic/lib/math/atanh.cl
M libclc/generic/lib/math/atanpi.cl
M libclc/generic/lib/math/cbrt.cl
M libclc/generic/lib/math/clc_exp10.cl
M libclc/generic/lib/math/clc_fmod.cl
M libclc/generic/lib/math/clc_pow.cl
M libclc/generic/lib/math/clc_pown.cl
M libclc/generic/lib/math/clc_powr.cl
M libclc/generic/lib/math/clc_remainder.cl
M libclc/generic/lib/math/clc_remquo.cl
M libclc/generic/lib/math/clc_rootn.cl
M libclc/generic/lib/math/clc_tan.cl
M libclc/generic/lib/math/clc_tanpi.cl
M libclc/generic/lib/math/cos.cl
M libclc/generic/lib/math/cosh.cl
M libclc/generic/lib/math/cospi.cl
M libclc/generic/lib/math/ep_log.cl
M libclc/generic/lib/math/ep_log.h
M libclc/generic/lib/math/erf.cl
M libclc/generic/lib/math/erfc.cl
M libclc/generic/lib/math/exp.cl
M libclc/generic/lib/math/exp2.cl
M libclc/generic/lib/math/exp_helper.cl
M libclc/generic/lib/math/exp_helper.h
M libclc/generic/lib/math/fdim.inc
M libclc/generic/lib/math/fract.cl
M libclc/generic/lib/math/fract.inc
M libclc/generic/lib/math/ilogb.cl
M libclc/generic/lib/math/ldexp.cl
M libclc/generic/lib/math/ldexp.inc
M libclc/generic/lib/math/lgamma.cl
M libclc/generic/lib/math/lgamma_r.cl
M libclc/generic/lib/math/lgamma_r.inc
M libclc/generic/lib/math/log1p.cl
M libclc/generic/lib/math/modf.cl
M libclc/generic/lib/math/native_log.cl
M libclc/generic/lib/math/native_log2.cl
M libclc/generic/lib/math/native_unary_intrinsic.inc
M libclc/generic/lib/math/sin.cl
M libclc/generic/lib/math/sincosD_piby4.h
M libclc/generic/lib/math/sincos_helpers.cl
M libclc/generic/lib/math/sincos_helpers.h
M libclc/generic/lib/math/sincospiF_piby4.h
M libclc/generic/lib/math/sinh.cl
M libclc/generic/lib/math/sinpi.cl
M libclc/generic/lib/math/sqrt.cl
M libclc/generic/lib/math/tables.cl
M libclc/generic/lib/math/tanh.cl
M libclc/generic/lib/math/tgamma.cl
M libclc/generic/lib/relational/bitselect.cl
M libclc/generic/lib/relational/bitselect.inc
M libclc/generic/lib/subnormal_config.cl
M libclc/spirv/lib/subnormal_config.cl
Log Message:
-----------
[libclc] Update license headers (#132070)
This commit bulk-updates the libclc license headers to the current
Apache-2.0 WITH LLVM-exception license in situations where they were
previously attributed to AMD - and occasionally under an additional
single individual contributor - under an MIT license.
AMD signed the LLVM relicensing agreement and so agreed for their past
contributions under the new LLVM license.
The LLVM project also has had a long-standing, unwritten, policy of not
adding copyright notices to source code. This policy was recently
written up [1]. This commit therefore also removes these copyright
notices at the same time.
Note that there are outstanding copyright notices attributed to others -
and many files missing copyright headers - which will be dealt with in
future work.
[1]
https://llvm.org/docs/DeveloperPolicy.html#embedded-copyright-or-contributed-by-statements
Commit: 68180d8d16f07db8200dfce7bae26a80c43ebc5e
https://github.com/llvm/llvm-project/commit/68180d8d16f07db8200dfce7bae26a80c43ebc5e
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/parse-tree.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Parser/OpenMP/depobj-construct.f90
M flang/test/Parser/OpenMP/metadirective-dirspec.f90
M flang/test/Parser/OpenMP/metadirective-flush.f90
M flang/test/Semantics/OpenMP/depobj-construct-v50.f90
Log Message:
-----------
[flang][OpenMP] Use OmpDirectiveSpecification in standalone directives (#131163)
This uses OmpDirectiveSpecification in the rest of the standalone
directives.
Commit: 8c6f309023a9c5b6d8488e89ed0be8da7d117a68
https://github.com/llvm/llvm-project/commit/8c6f309023a9c5b6d8488e89ed0be8da7d117a68
Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/include/clang/AST/Expr.h
M clang/lib/AST/Expr.cpp
M clang/lib/Parse/ParseInit.cpp
M clang/lib/Sema/SemaInit.cpp
A clang/test/Preprocessor/embed_constexpr.c
Log Message:
-----------
[clang] Introduce "binary" StringLiteral for #embed data (#127629)
StringLiteral is used as internal data of EmbedExpr and we directly use
it as an initializer if a single EmbedExpr appears in the initializer
list of a char array. It is fast and convenient, but it is causing
problems when string literal character values are checked because #embed
data values are within a range [0-2^(char width)] but ordinary
StringLiteral is of maybe signed char type.
This PR introduces new kind of StringLiteral to hold binary data coming
from an embedded resource to mitigate these problems. The new kind of
StringLiteral is not assumed to have signed char type. The new kind of
StringLiteral also helps to prevent crashes when trying to find
StringLiteral token locations since these simply do not exist for binary
data.
Fixes https://github.com/llvm/llvm-project/issues/119256
Commit: c65fa9163e47af5e86b2a187dd45ae665cf5a996
https://github.com/llvm/llvm-project/commit/c65fa9163e47af5e86b2a187dd45ae665cf5a996
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/AST/ByteCode/literals.cpp
M clang/test/C/C23/n2819.c
M clang/www/c_status.html
Log Message:
-----------
[C23] Fix compound literals within function prototype (#132097)
WG14 N2819 clarified that a compound literal within a function prototype
has a lifetime similar to that of a local variable within the function,
not a file scope variable.
Commit: a5d4b50f936628209ca0c53249f28bc212c138c0
https://github.com/llvm/llvm-project/commit/a5d4b50f936628209ca0c53249f28bc212c138c0
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] NFC. Change the inner loop and outer loop of appendOperandsOfVL. (#132152)
Commit: 9dc854ccbd3d29c8dcf6b81b691724c9fc4bfc6c
https://github.com/llvm/llvm-project/commit/9dc854ccbd3d29c8dcf6b81b691724c9fc4bfc6c
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M libcxx/test/std/containers/sequences/vector.bool/copy.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/copy_alloc.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/move.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/move_alloc.pass.cpp
Log Message:
-----------
[libc++] Improve test coverage for copy/move ctors for vector<bool> (#120132)
The current tests for `vector<bool>` fail to adequately cover realistic
scenarios, as they are limited to cases of up to 3 bytes, representing
less than 1/2 of a word size on a 64-bit system. However, most
`vector<bool>` operations rely on code paths triggered only when
handling multiple storage words (8 bytes each). To address this gap,
this PR rewrites the tests for copy and move constructors, as well as
allocator-extended copy and move constructors, ensuring that previously
untested code paths are now thoroughly validated.
Commit: 7dc550473c5239399707804c9466519d165aa7fd
https://github.com/llvm/llvm-project/commit/7dc550473c5239399707804c9466519d165aa7fd
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/test/CodeGen/AArch64/sve-ptest-removal-cmpeq.mir
Log Message:
-----------
[LLVM][CodeGen][AArch64] Improve PTEST removal by looking through copies. (#132041)
The general predicates of the PTEST and PTEST_like instructions may
belong to different register classes. This can lead to the insertion of
a COPY instruction, making them appear different. However, for the
purpose of PTEST removal, such copies are irrelevant, and we can look
through them to improve the likelihood of finding a match.
Commit: 1a2539ec929f01c33c1c667cc8f21064d61526e7
https://github.com/llvm/llvm-project/commit/1a2539ec929f01c33c1c667cc8f21064d61526e7
Author: Ingo Müller <ingomueller at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
Log Message:
-----------
[mlir:bufferization] Make `LayoutMapOption` CL args enums. (#132121)
This PR changes the type of the command-line arguments representing
`LayoutMapOption` from `std::string` to the enum with the same name.
This allows for checking the values of programmable usages of the
corresponding options at compile time.
Commit: 73558dc329ee44465672fc492ec8dcee8afad2fa
https://github.com/llvm/llvm-project/commit/73558dc329ee44465672fc492ec8dcee8afad2fa
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/revec-getStoreMinimumVF.ll
Log Message:
-----------
[SLP][REVEC] Fix getStoreMinimumVF only accept scalar types. (#132181)
Fix "Element type of a VectorType must " "be an integer, floating point,
or " "pointer type.".
Commit: 345748e02722ce81ecd11beac18121b23325b853
https://github.com/llvm/llvm-project/commit/345748e02722ce81ecd11beac18121b23325b853
Author: Luke Lau <luke at igalia.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Analysis/IVDescriptors.cpp
Log Message:
-----------
[IVDescriptor] Explicitly check for isMinMaxRecurrenceKind in getReductionOpChain. NFC (#132025)
There are other types of recurrences with an icmp/fcmp opcode, AnyOf and
FindLastIV, so don't rely on the opcode to detect them.
This makes adding support for AnyOf in #131830 easier.
Note that these currently fail the ExpectedUses/isCorrectOpcode checks
anyway, so there shouldn't be any functional change.
Commit: cb1e91c18dd20f6b2d1c38ce93befab87f77ce0f
https://github.com/llvm/llvm-project/commit/cb1e91c18dd20f6b2d1c38ce93befab87f77ce0f
Author: Wenju He <wenju.he at intel.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M libclc/cmake/modules/AddLibclc.cmake
Log Message:
-----------
[libclc] add --only-needed to llvm-link when INTERNALIZE flag is set (#130871)
When -internalize flag is passed to llvm-link, we only need to link in
needed symbols. This PR reduces size of linked bitcode, e.g. by removing
following symbols:
_Z12__clc_sw_fmaDv16_fS_S_
_Z12__clc_sw_fmaDv2_fS_S_
_Z12__clc_sw_fmaDv3_fS_S_
_Z12__clc_sw_fmaDv4_fS_S_
_Z12__clc_sw_fmaDv8_fS_S_
_Z12__clc_sw_fmafff
Commit: 9b1f905b483a2b42e4681bbef42b2641f8ccf5ad
https://github.com/llvm/llvm-project/commit/9b1f905b483a2b42e4681bbef42b2641f8ccf5ad
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/NestedNameSpecifier.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.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/TemplateArgumentHasher.cpp
M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
M clang/test/AST/ast-dump-templates.cpp
M clang/test/AST/ast-dump-types-json.cpp
M clang/test/AST/attr-print-emit.cpp
M clang/test/Analysis/cxx-uninitialized-object-ptr-ref.cpp
M clang/test/CXX/class.access/p6.cpp
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p5.cpp
M clang/test/Index/print-type.cpp
M clang/test/SemaCXX/addr-of-overloaded-function.cpp
M clang/test/SemaCXX/builtin-ptrtomember-ambig.cpp
M clang/test/SemaCXX/calling-conv-compat.cpp
M clang/test/SemaCXX/err_init_conversion_failed.cpp
M clang/test/SemaCXX/member-pointer.cpp
M clang/test/SemaOpenACC/combined-construct-if-ast.cpp
M clang/test/SemaOpenACC/combined-construct-num_workers-ast.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-intexpr-clause-ast.cpp
M clang/test/SemaOpenACC/data-construct-if-ast.cpp
M clang/test/SemaTemplate/instantiate-member-pointers.cpp
M clang/tools/libclang/CXType.cpp
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
Log Message:
-----------
[clang] improve class type sugar preservation in pointers to members (#130537)
This changes the MemberPointerType representation to use a
NestedNameSpecifier instead of a Type to represent the class.
Since the qualifiers are always parsed as nested names, there was an
impedance mismatch when converting these back and forth into types, and
this led to issues in preserving sugar.
The nested names are indeed a better match for these, as the differences
which a QualType can represent cannot be expressed syntactically, and it
also represents the use case more exactly, being either dependent or
referring to a CXXRecord, unqualified.
This patch also makes the MemberPointerType able to represent sugar for
a {up/downcast}cast conversion of the base class, although for now the
underlying type is canonical, as preserving the sugar up to that point
requires further work.
As usual, includes a few drive-by fixes in order to make use of the
improvements, and removing some duplications, for example
CheckBaseClassAccess is deduplicated from across SemaAccess and
SemaCast.
Commit: e6a87da8fe314a009eed769f9737b4b281a06fba
https://github.com/llvm/llvm-project/commit/e6a87da8fe314a009eed769f9737b4b281a06fba
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
Log Message:
-----------
[CodeGen] Don't explicitly set intrinsic attributes (NFCI)
The intrinsic attributes are automatically set when the function
is created, there is no need to assign them explicitly.
Commit: 6cd62ad08c974b7d4f7171c66f6567de82bd236f
https://github.com/llvm/llvm-project/commit/6cd62ad08c974b7d4f7171c66f6567de82bd236f
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/NestedNameSpecifier.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.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/TemplateArgumentHasher.cpp
M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
M clang/test/AST/ast-dump-templates.cpp
M clang/test/AST/ast-dump-types-json.cpp
M clang/test/AST/attr-print-emit.cpp
M clang/test/Analysis/cxx-uninitialized-object-ptr-ref.cpp
M clang/test/CXX/class.access/p6.cpp
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p5.cpp
M clang/test/Index/print-type.cpp
M clang/test/SemaCXX/addr-of-overloaded-function.cpp
M clang/test/SemaCXX/builtin-ptrtomember-ambig.cpp
M clang/test/SemaCXX/calling-conv-compat.cpp
M clang/test/SemaCXX/err_init_conversion_failed.cpp
M clang/test/SemaCXX/member-pointer.cpp
M clang/test/SemaOpenACC/combined-construct-if-ast.cpp
M clang/test/SemaOpenACC/combined-construct-num_workers-ast.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-intexpr-clause-ast.cpp
M clang/test/SemaOpenACC/data-construct-if-ast.cpp
M clang/test/SemaTemplate/instantiate-member-pointers.cpp
M clang/tools/libclang/CXType.cpp
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
Log Message:
-----------
Revert "[clang] improve class type sugar preservation in pointers to members" (#132215)
Reverts llvm/llvm-project#130537
This missed updating lldb, which we didn't notice due to lack of
pre-commit CI.
Commit: 97213b39edea06f78b76d4baf299c0ffa323a9d6
https://github.com/llvm/llvm-project/commit/97213b39edea06f78b76d4baf299c0ffa323a9d6
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/MCRegisterInfo.h
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp
M llvm/lib/Target/AMDGPU/R600InstrInfo.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
Log Message:
-----------
[MC] Return MCRegister from MCRegisterClass::getRegister. NFC (#132126)
Replace unsigned with MCRegister at some of the call sites.
Commit: 55d3a55cc14d77db1c5d254aeb925b2340b11f91
https://github.com/llvm/llvm-project/commit/55d3a55cc14d77db1c5d254aeb925b2340b11f91
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/fneg-combines.f16.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen]disable true16 on fneg test (#132221)
This is a NFC change.
Revert the failed test case in
https://github.com/llvm/llvm-project/pull/131206
Commit: ff3341ca35fe4ce05b52e89d654ff4c696d3602e
https://github.com/llvm/llvm-project/commit/ff3341ca35fe4ce05b52e89d654ff4c696d3602e
Author: Sergio Afonso <safonsof at amd.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
Log Message:
-----------
[MLIR][OpenMP] Simplify OpenMP to LLVM dialect conversion (#132009)
This patch makes a few changes to unify the conversion process from the
'omp' to the 'llvm' dialect. The main goal of this change is to
consolidate the logic used to identify legal and illegal ops, and to
consolidate the conversion logic into a single class.
Changes introduced are the following:
- Removal of `getNumVariableOperands()` and `getVariableOperand()` extra
class declarations from OpenMP operations. These are redundant, as they
are equivalent to `mlir::Operation::getNumOperands()` and
`mlir::Operation::getOperands()`, respectively.
- Consolidation of `RegionOpConversion`,
`RegionLessOpWithVarOperandsConversion`,
`RegionOpWithVarOperandsConversion`, `RegionLessOpConversion`,
`AtomicReadOpConversion`, `MapInfoOpConversion`,
`DeclMapperOpConversion` and `MultiRegionOpConversion` into a single
`OpenMPOpConversion` class. This is possible because all of the previous
were doing parts of the same set of operations based on whether they
defined any regions, whether they took operands, type attributes, etc.
- Update of `mlir::configureOpenMPToLLVMConversionLegality` to use a
single generic set of checks for all operations, removing the need to
list every operation manually.
- Update of `mlir::populateOpenMPToLLVMConversionPatterns` to
automatically populate the list of patterns to include all dialect operations.
Commit: fdeb2ff30407afbfc3596aaf417a2a91cdff20c9
https://github.com/llvm/llvm-project/commit/fdeb2ff30407afbfc3596aaf417a2a91cdff20c9
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M lldb/source/Symbol/Function.cpp
M lldb/test/Shell/SymbolFile/DWARF/x86/discontinuous-function.s
Log Message:
-----------
[lldb] Fix prologue size calculation for discontinuous functions (#131597)
When searching for the end of prologue, I'm only iterating through the
address range (~basic block) which contains the function entry point.
The reason for that is that even if some other range somehow contained
the end-of-prologue marker, the fact that it's in a different range
would imply it's reachable through some form of control flow, and that's
usually not a good place to set an function entry breakpoint.
Commit: 3b3f8c50b646600dc1846c7d3d018fdb39fbfe0b
https://github.com/llvm/llvm-project/commit/3b3f8c50b646600dc1846c7d3d018fdb39fbfe0b
Author: Thurston Dang <thurston at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M compiler-rt/lib/asan/asan_internal.h
M compiler-rt/lib/asan/asan_linux.cpp
M compiler-rt/lib/asan/asan_mac.cpp
M compiler-rt/lib/asan/asan_shadow_setup.cpp
M compiler-rt/lib/asan/asan_win.cpp
Log Message:
-----------
[asan] Re-exec without ASLR if needed on 32-bit Linux (#131975)
High-entropy ASLR allows up to 16-bits of entropy (2**16 4KB pages ==
256MB; a bit more in practice because of implementation details), which
is a significant chunk of the user address space on 32-bit systems (4GB
or less). This, combined with ASan's shadow (512MB) and ASan's fixed
shadow offset (512MB), makes it possible for large binaries to fail to
map the shadow.
This patch changes ASan to do a one-time re-exec without ASLR if it
cannot map the shadow, thus reclaiming the ~256MB of address space.
Alternatives considered:
1) We don't lower ASan's fixed shadow offset, because that would limit
non-PIE binaries.
2) We don't switch to a dynamic shadow offset, because ASan for 32-bit
Linux relies on the compile-time constant offset to optimize its
instrumentation and compiler-rt.
This is loosely inspired by
https://github.com/llvm/llvm-project/pull/78351,
https://github.com/llvm/llvm-project/pull/85142, and
https://github.com/llvm/llvm-project/pull/85674, though those were
required because there were no static shadow mappings that could fully
shadow the range of user mappings; this is not the case for ASan.
Commit: 7063419460d1e8cef9017aa51a61fb95669cf85f
https://github.com/llvm/llvm-project/commit/7063419460d1e8cef9017aa51a61fb95669cf85f
Author: Prashanth <TheStarOne01 at proton.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M libc/docs/CMakeLists.txt
M libc/docs/headers/index.rst
A libc/utils/docgen/dirent.yaml
Log Message:
-----------
[libc][docs] Add dirent implementation status doc and include in CMakeLists (#132151)
These changes tracks `dirent.h` for the implementation status of
functions and macros, with respect to the issue (
https://github.com/llvm/llvm-project/issues/122006 ).
Commit: 392b8f3e6353a1bcb980b73491a26cd5d04020bd
https://github.com/llvm/llvm-project/commit/392b8f3e6353a1bcb980b73491a26cd5d04020bd
Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/Sema/SemaExprCXX.cpp
Log Message:
-----------
[clang] Handle Binary StingLiteral kind in one more place (#132201)
The bots are upset by https://github.com/llvm/llvm-project/pull/127629 .
Fix that.
Commit: cebc4a167c518d83bb95fddd1c0dd6eebed3d505
https://github.com/llvm/llvm-project/commit/cebc4a167c518d83bb95fddd1c0dd6eebed3d505
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/Lex/HeaderMap.cpp
Log Message:
-----------
[Lex][Clang] Add checking to HeaderMapImpl::getString to make it more robust (#131677)
Static analysis identified the Len - 1 expression in
HeaderMapImpl::getString as problematic if Len is zero. After filing
this issue:
https://github.com/llvm/llvm-project/issues/130185
Indeed we should be checking MaxLen and verify it is not zero as well.
Fixes: https://github.com/llvm/llvm-project/issues/130185
Commit: eb77061a428c28e9297c7a35cdbe568811025b2b
https://github.com/llvm/llvm-project/commit/eb77061a428c28e9297c7a35cdbe568811025b2b
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Preprocessor/riscv-target-features.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
A llvm/lib/Target/RISCV/RISCVInstrInfoZvqdotq.td
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/MC/RISCV/attribute-arch.s
A llvm/test/MC/RISCV/rvv/zvqdotq-invalid.s
A llvm/test/MC/RISCV/rvv/zvqdotq.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add assembler support for Zvqdotq. (#132118)
Based on the 0.0.1 spec here
https://github.com/riscv/riscv-dot-product/releases/tag/v0.0.1
Commit: b231f6f86237fc1a15377b4aad6cf9be4808d727
https://github.com/llvm/llvm-project/commit/b231f6f86237fc1a15377b4aad6cf9be4808d727
Author: Sergio Afonso <safonsof at amd.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M flang/docs/OpenMP-descriptor-management.md
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
M flang/lib/Optimizer/OpenMP/MapsForPrivatizedSymbols.cpp
M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-1.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Lower/OpenMP/allocatable-array-bounds.f90
M flang/test/Lower/OpenMP/allocatable-map.f90
M flang/test/Lower/OpenMP/array-bounds.f90
M flang/test/Lower/OpenMP/declare-mapper.f90
M flang/test/Lower/OpenMP/derived-type-allocatable-map.f90
M flang/test/Lower/OpenMP/map-mapper.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Transforms/omp-map-info-finalization-implicit-field.fir
M flang/test/Transforms/omp-map-info-finalization.fir
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Target/LLVMIR/omptarget-data-use-dev-ordering.mlir
M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-nested-ptr-record-type-mapping-host.mlir
M mlir/test/Target/LLVMIR/omptarget-nullary-record-ptr-member-map.mlir
M mlir/test/Target/LLVMIR/omptarget-record-type-with-ptr-member-host.mlir
Log Message:
-----------
[MLIR][OpenMP] Improve omp.map.info verification (#132066)
This patch makes the `map_type` and `map_capture_type` arguments of the
`omp.map.info` operation required, which was already an invariant being
verified by its users via `verifyMapClause()`. This makes it clearer, as
getters no longer return misleading `std::optional` values.
Checks for the `mapper_id` argument are moved to a verifier for the
operation, rather than being checked by users.
Functionally NFC, but not marked as such due to a reordering of
arguments in the assembly format of `omp.map.info`.
Commit: 03ceb26b55b855c64385c52020846eaa86dd278b
https://github.com/llvm/llvm-project/commit/03ceb26b55b855c64385c52020846eaa86dd278b
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave.ll
Log Message:
-----------
[RISCV] Fix incorrect slide offset when using vnsrl to de-interleave (#132123)
Given this shuffle:
```
shufflevector <8 x i8> %0, <8 x i8> %1, <8 x i32> <i32 0, i32 4, i32 8, i32 12, i32 undef, i32 undef, i32 undef, i32 undef>
```
#127272 lowers it with a bunch of vnsrl. If we describe the result in
terms of the shuffle mask, we expect:
```
<0, 4, 8, 12, u, u, u, u>
```
but we actually got:
```
<0, 4, u, u, 8, 12, u, u>
```
for factor larger than 2. This is caused by `CONCAT_VECTORS` on
incorrect (sub) vector types. This patch fixes the said issue by
building an aggregate vector with the correct sub vector types.
Fix #132071
Commit: 7c1f473524abe4d85af9ea390d3516848c9ba31e
https://github.com/llvm/llvm-project/commit/7c1f473524abe4d85af9ea390d3516848c9ba31e
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
Log Message:
-----------
[NFC][analyzer] Multipart checker refactor 1: VirtualCallChecker (#132072)
Simplify `VirtualCallChecker.cpp` with the help of the new framework for
multipart checkers that was introduced by commit
27099982da2f5a6c2d282d6b385e79d080669546. This is part of a commit
series that will perform analogous changes in all checker classes that
implement multiple user-facing checker parts (with separate names).
In this commit I'm removing the undocumented hidden
`cplusplus.VirtualCallModeling` checker, because (to my best
understanding) it was just a hacky implementation detail within the old
way of registering the "real" checker parts.
Note that keeping or re-adding an extra checker part like this modeling
checker would be very easy within the new framework; I'm removing it
only because I'm convinced that it is no longer useful.
Commit: 71935281e02cfaef2bd109bcb58f0d80039ffd15
https://github.com/llvm/llvm-project/commit/71935281e02cfaef2bd109bcb58f0d80039ffd15
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
M llvm/lib/Target/ARM/ARMConstantPoolValue.cpp
M llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
M llvm/lib/Target/ARM/ARMParallelDSP.cpp
M llvm/lib/Target/Hexagon/BitTracker.cpp
M llvm/lib/Target/Hexagon/HexagonCommonGEP.cpp
M llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
M llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
M llvm/lib/Target/SPIRV/Analysis/SPIRVConvergenceRegionAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
M llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp
M llvm/lib/Target/X86/X86CmovConversion.cpp
M llvm/lib/Target/X86/X86RegisterInfo.cpp
Log Message:
-----------
[Target] Use *Set::insert_range (NFC) (#132140)
DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range. This patch replaces:
Dest.insert(Src.begin(), Src.end());
with:
Dest.insert_range(Src);
This patch does not touch custom begin like succ_begin for now.
Commit: c38ef58557e26394e330f6ba16ff71b492cf50bb
https://github.com/llvm/llvm-project/commit/c38ef58557e26394e330f6ba16ff71b492cf50bb
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/Program.cpp
Log Message:
-----------
[ByteCode] Avoid repeated hash lookups (NFC) (#132141)
Commit: 69b70110b78930b942a5e92db40bcefd0ac7890b
https://github.com/llvm/llvm-project/commit/69b70110b78930b942a5e92db40bcefd0ac7890b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/utils/TableGen/NeonEmitter.cpp
Log Message:
-----------
[TableGen] Avoid repeated hash lookups (NFC) (#132142)
Commit: ac269e6d94c29711616991a8d714e9a05e1bbce6
https://github.com/llvm/llvm-project/commit/ac269e6d94c29711616991a8d714e9a05e1bbce6
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/ExecutionEngine/JITLink/COFFLinkGraphBuilder.cpp
Log Message:
-----------
[ExecutionEngine] Avoid repeated hash lookups (NFC) (#132143)
Commit: bc9cee163c35262efab2805649c0a566ec8951fb
https://github.com/llvm/llvm-project/commit/bc9cee163c35262efab2805649c0a566ec8951fb
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Transforms/IPO/SampleContextTracker.cpp
Log Message:
-----------
[IPO] Avoid repeated map lookups (NFC) (#132144)
Commit: 93507f6c6779d9585e5b2d0eb775354929626757
https://github.com/llvm/llvm-project/commit/93507f6c6779d9585e5b2d0eb775354929626757
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCLoopInstrFormPrep.cpp
Log Message:
-----------
[PowerPC] Avoid repeated hash lookups (NFC) (#132145)
Commit: 2df51fd9c491ef1ad90fbad5ce18ea8ff8bd3117
https://github.com/llvm/llvm-project/commit/2df51fd9c491ef1ad90fbad5ce18ea8ff8bd3117
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[Transforms] Avoid repeated hash lookups (NFC) (#132146)
Commit: 482b95217e9d77c8c5ddb601579ef8b6d86c188c
https://github.com/llvm/llvm-project/commit/482b95217e9d77c8c5ddb601579ef8b6d86c188c
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M bolt/lib/Passes/NonPacProtectedRetAnalysis.cpp
A bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
Log Message:
-----------
[BOLT] Gadget scanner: factor out utility code (#131895)
Factor out the code for mapping from physical registers to consecutive
array indexes.
Introduce helper functions to print instructions and registers to
prevent mixing of analysis logic and implementation details of debug
output.
Removed the debug printing from `Gadget::generateReport`, as it doesn't
seem to add important information to what was already printed in the
report itself.
Commit: 15ad84fffd76e845ce48f7cb8a917eb6532b93c9
https://github.com/llvm/llvm-project/commit/15ad84fffd76e845ce48f7cb8a917eb6532b93c9
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/Tooling/DependencyScanning/CMakeLists.txt
Log Message:
-----------
[clang][deps] Explicitly link pthreads
This is a speculative fix for link failure found by the RHEL 8 bot: https://lab.llvm.org/buildbot/#/builders/204/builds/3862.
FAILED: lib/libclangDependencyScanning.so.21.0git
/InProcessModuleCache.cpp.o: In function `(anonymous namespace)::ReaderWriterLock::tryLock()':
InProcessModuleCache.cpp:(.text._ZN12_GLOBAL__N_116ReaderWriterLock7tryLockEv+0x1d): undefined reference to `pthread_rwlock_trywrlock'
Commit: 99b1a2ac078fe52300d270b3e77ddbababa8f951
https://github.com/llvm/llvm-project/commit/99b1a2ac078fe52300d270b3e77ddbababa8f951
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/include/clang/Basic/FileManager.h
M clang/lib/Basic/FileManager.cpp
Log Message:
-----------
[clang] Remove deprecated `FileManager` APIs (#132063)
This PR removes the `FileManager` APIs that have been deprecated for a
while.
LLVM 20.1.0 that was released earlier this month contains the formal
deprecation of these APIs, so these should be fine to remove in the next
major release.
Commit: 73cd84a90e074e32160de9216b12c1737e96362d
https://github.com/llvm/llvm-project/commit/73cd84a90e074e32160de9216b12c1737e96362d
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M libcxx/include/CMakeLists.txt
M libcxx/include/__functional/operations.h
M libcxx/include/__fwd/functional.h
A libcxx/include/__fwd/map.h
A libcxx/include/__fwd/set.h
M libcxx/include/__tree
M libcxx/include/map
M libcxx/include/module.modulemap
M libcxx/include/set
Log Message:
-----------
[NFC][libc++] Adds (multi|)(map|set) forward declarations. (#131541)
This removes duplicated forward declarations of these classes.
closes: #131518
Commit: 10624e67c3f26ce733a01de891e43602b6253395
https://github.com/llvm/llvm-project/commit/10624e67c3f26ce733a01de891e43602b6253395
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M bolt/lib/Passes/NonPacProtectedRetAnalysis.cpp
Log Message:
-----------
[BOLT] Fix warnings
bolt/lib/Passes/NonPacProtectedRetAnalysis.cpp:62:13: error: unused
function 'traceInst' [-Werror,-Wunused-function]
bolt/lib/Passes/NonPacProtectedRetAnalysis.cpp:68:13: error: unused
function 'traceReg' [-Werror,-Wunused-function]
bolt/lib/Passes/NonPacProtectedRetAnalysis.cpp:80:13: error: unused
function 'traceRegMask' [-Werror,-Wunused-function]
Commit: 5f6d9b45e90a261810e347a7de092545dbb46fc6
https://github.com/llvm/llvm-project/commit/5f6d9b45e90a261810e347a7de092545dbb46fc6
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M bolt/include/bolt/Core/Relocation.h
Log Message:
-----------
[BOLT] Make Relocations a class and add optional field (#131638)
This patch converts `Relocations` from a struct to a class, and
introduces the `Optional` field. Patch #116964 will use it.
Some optimizations, like `scanExternalRefs`, create relocations that
patch the old code. Under certain circumstances these may be skipped
without correctness implications.
Commit: e202ff45df206859b6e3c2142a735348a0d449bb
https://github.com/llvm/llvm-project/commit/e202ff45df206859b6e3c2142a735348a0d449bb
Author: Wael Yehia <wmyehia2001 at yahoo.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/profile/InstrProfilingUtil.c
M compiler-rt/lib/profile/InstrProfilingUtil.h
M compiler-rt/test/profile/Posix/instrprof-fork.c
A compiler-rt/test/profile/instrprof-no-mmap-during-merging.c
Log Message:
-----------
[profile] Implement a non-mmap path when reading profile files from a non-local filesystem (#131177)
On AIX, when accessing mmap'ed memory associated to a file on NFS, a
SIGBUS might be raised at random.
The problem is still in open state with the OS team.
This PR teaches the profile runtime, under certain conditions, to avoid
the mmap when reading the profile file during online merging.
This PR has no effect on any platform other than AIX because I'm not
aware of this problem on other platforms.
Other platforms can easily opt-in to this functionality in the future.
The logic in function `is_local_filesystem` was copied from
[llvm/lib/Support/Unix/Path.inc](https://github.com/llvm/llvm-project/blob/f388ca3d9d9a58e3d189458b590ba68dfd9e5a2d/llvm/lib/Support/Unix/Path.inc#L515)
(https://reviews.llvm.org/D58801), because it seems that the
compiler-rt/profile cannot reuse code from llvm except through
`InstrProfData.inc`.
Thanks to @hubert-reinterpretcast for substantial feedback downstream.
---------
Co-authored-by: Wael Yehia <wyehia at ca.ibm.com>
Co-authored-by: Hubert Tong <hubert.reinterpretcast at gmail.com>
Commit: 4d4d9d5d333cd8c3cfa0822157ded5ff735aed29
https://github.com/llvm/llvm-project/commit/4d4d9d5d333cd8c3cfa0822157ded5ff735aed29
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/lib/CodeGen/StackSlotColoring.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
Log Message:
-----------
[TTI] Use TypeSize in isLoadFromStackSlot and isStoreToStackSlot [nfc] (#132244)
Motivation is supporting scalable spills and reloads, e.g. in
https://github.com/llvm/llvm-project/pull/120524.
Looking at this API, I'm suspicious that the access size should just be
coming from the memory operand on the load or store, but we don't appear
to be consistently setting that up. That's a larger change so I may or
may not bother pursuing that.
Commit: b62e149f06f0cfe4f197bc7228616c4b83c4e9bf
https://github.com/llvm/llvm-project/commit/b62e149f06f0cfe4f197bc7228616c4b83c4e9bf
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/test/Analysis/CostModel/X86/arith-fma.ll
Log Message:
-----------
[CostModel][X86] check fma cost kinds using -cost-kind=all
Commit: fa52a54891a9ac460c7311c2618515c5f1e319d2
https://github.com/llvm/llvm-project/commit/fa52a54891a9ac460c7311c2618515c5f1e319d2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
Log Message:
-----------
[X86] Add tests showing failure to concatenate X86ISD::VPERMILPV nodes.
Commit: 89a1197c1f4ff11178109efe51bc82223c68f513
https://github.com/llvm/llvm-project/commit/89a1197c1f4ff11178109efe51bc82223c68f513
Author: Thurston Dang <thurston at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M compiler-rt/lib/asan/asan_linux.cpp
Log Message:
-----------
[asan] Fix-forward by adding SANITIZER_LINUX guard to 131975
Fix Solaris build breakage reported in https://github.com/llvm/llvm-project/pull/131975#issuecomment-2741097471
Commit: adb57757b9640768e5070e0e3f6b217c774f9205
https://github.com/llvm/llvm-project/commit/adb57757b9640768e5070e0e3f6b217c774f9205
Author: Thurston Dang <thurston at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M compiler-rt/lib/asan/asan_linux.cpp
Log Message:
-----------
[asan] Fix-forward by removing sys/personality.h for non-Linux in #131975
Fix Solaris build breakage reported in https://github.com/llvm/llvm-project/pull/131975#issuecomment-2741097471
Commit: 5356a9bcbb0b8364ce11276444055d8769bd5bae
https://github.com/llvm/llvm-project/commit/5356a9bcbb0b8364ce11276444055d8769bd5bae
Author: Nico Weber <thakis at chromium.org>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/BUILD.gn
M llvm/utils/gn/secondary/llvm/test/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-ml/BUILD.gn
Log Message:
-----------
[gn] port 3c657ceef9ced (llvm-ml64)
Commit: 0489447b0782da6dd6493019465f175efcfdec16
https://github.com/llvm/llvm-project/commit/0489447b0782da6dd6493019465f175efcfdec16
Author: RolandF77 <55763885+RolandF77 at users.noreply.github.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrFutureMMA.td
M llvm/test/CodeGen/PowerPC/dmf-outer-product.ll
M llvm/test/CodeGen/PowerPC/dmr-enable.ll
M llvm/test/CodeGen/PowerPC/mmaplus-acc-spill.ll
M llvm/test/CodeGen/PowerPC/mmaplus-intrinsics.ll
M llvm/test/CodeGen/PowerPC/v1024ls.ll
M llvm/test/MC/Disassembler/PowerPC/ppc-encoding-ISAFuture.txt
M llvm/test/MC/Disassembler/PowerPC/ppc64le-encoding-ISAFuture.txt
M llvm/test/MC/PowerPC/ppc-encoding-ISAFuture.s
Log Message:
-----------
[PowerPC] dmr extract update assembly operand order (#132083)
The operand order of the assembly for dmr extract instructions has
changed since they were added. The results now come before the uses.
Commit: 909bff82b06aae32d27dfae0e878c3ffc40c4ee2
https://github.com/llvm/llvm-project/commit/909bff82b06aae32d27dfae0e878c3ffc40c4ee2
Author: Peter Collingbourne <pcc at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
gn build: libcxx: Sync file list and always define _LIBCPP_ABI_VERSION.
The CMake side always defines _LIBCPP_ABI_VERSION. If we do not, we will
at least get -Wundef warnings in the test suite (upgraded to errors)
and it looks like we will end up building the library incorrectly as well.
With that, most of the libc++ test suite passes (with a manually written
lit.site.cfg) aside from some parts related to C++ modules which we
don't support yet.
Reviewers: nico, aeubanks
Reviewed By: aeubanks
Pull Request: https://github.com/llvm/llvm-project/pull/132135
Commit: 382b707e52ee6a0ca9a799795362dee67ade993f
https://github.com/llvm/llvm-project/commit/382b707e52ee6a0ca9a799795362dee67ade993f
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M .github/workflows/libcxx-build-and-test.yaml
A libcxx/cmake/caches/Generic-modules-cxx17-lsv.cmake
R libcxx/cmake/caches/Generic-modules-lsv.cmake
M libcxx/test/libcxx/atomics/atomics.syn/incompatible_with_stdatomic.verify.cpp
M libcxx/utils/ci/run-buildbot
M libcxx/utils/libcxx/test/params.py
Log Message:
-----------
[libc++] Add coverage for C++17 and Clang Modules with LSV (#131815)
In recent versions of Clang, using -std=c++20 (and later) implies LSV
when compiling with modules. This change resulted in making our LSV job
redundant with the regular modules job, which uses the latest Standard.
This patch increases the coverage of our CI without increasing its cost
by pinning the LSV job to use C++17, which normally doesn't use LSV. A
related question is whether we should add coverage for non-LSV builds
using Clang modules.
Commit: dd3addf954ac7e704fccc7d011217ba10461c883
https://github.com/llvm/llvm-project/commit/dd3addf954ac7e704fccc7d011217ba10461c883
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dependency for ff3341ca35fe4ce05b52e89d654ff4c696d3602e
Commit: 882082ae405d086b61588169fe31102c58b7d74e
https://github.com/llvm/llvm-project/commit/882082ae405d086b61588169fe31102c58b7d74e
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/test/CodeGenHLSL/cbuffer.hlsl
M clang/test/CodeGenHLSL/cbuffer_and_namespaces.hlsl
M clang/test/CodeGenHLSL/cbuffer_with_packoffset.hlsl
M clang/test/CodeGenHLSL/cbuffer_with_static_global_and_function.hlsl
M clang/test/CodeGenHLSL/default_cbuffer.hlsl
M clang/test/CodeGenHLSL/default_cbuffer_with_layout.hlsl
M llvm/test/CodeGen/DirectX/Metadata/cbuffer_metadata.ll
Log Message:
-----------
[HLSL] Buffer handle globals should not be constants (#130231)
If these are constants their initializers will be removed by
InstCombine. Change them to not be constants and initialize them with
poison.
Commit: 49f06075a6d298bd13564c9bffcf51281bed4962
https://github.com/llvm/llvm-project/commit/49f06075a6d298bd13564c9bffcf51281bed4962
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/unions.cpp
Log Message:
-----------
[clang][bytecode] Fix union copy/move operator active check (#132238)
Don't call CheckActive for copy/move operators. They will activate the
union member.
Commit: ebe5c660608c1c830236c1e379c9720292343cda
https://github.com/llvm/llvm-project/commit/ebe5c660608c1c830236c1e379c9720292343cda
Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILConstants.h
M llvm/utils/TableGen/DXILEmitter.cpp
Log Message:
-----------
[DXIL] Remove definition and any uses of DXIL `Property` (#130796)
- Remove definitions from DXIL.td and any emissions/definitions that
were previously planned to be used
See resolved issue for motivations of deletion
Resolves #126298
Commit: 578f38cd08ba71300b013644e5ae8c8a64598800
https://github.com/llvm/llvm-project/commit/578f38cd08ba71300b013644e5ae8c8a64598800
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/NestedNameSpecifier.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.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/TemplateArgumentHasher.cpp
M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
M clang/test/AST/ast-dump-templates.cpp
M clang/test/AST/ast-dump-types-json.cpp
M clang/test/AST/attr-print-emit.cpp
M clang/test/Analysis/cxx-uninitialized-object-ptr-ref.cpp
M clang/test/CXX/class.access/p6.cpp
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p5.cpp
M clang/test/Index/print-type.cpp
M clang/test/SemaCXX/addr-of-overloaded-function.cpp
M clang/test/SemaCXX/builtin-ptrtomember-ambig.cpp
M clang/test/SemaCXX/calling-conv-compat.cpp
M clang/test/SemaCXX/err_init_conversion_failed.cpp
M clang/test/SemaCXX/member-pointer.cpp
M clang/test/SemaOpenACC/combined-construct-if-ast.cpp
M clang/test/SemaOpenACC/combined-construct-num_workers-ast.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-intexpr-clause-ast.cpp
M clang/test/SemaOpenACC/data-construct-if-ast.cpp
M clang/test/SemaTemplate/instantiate-member-pointers.cpp
M clang/tools/libclang/CXType.cpp
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
Reland: [clang] preserve class type sugar when taking pointer to member (#132234)
Original PR: #130537
Reland after updating lldb too.
This changes the MemberPointerType representation to use a
NestedNameSpecifier instead of a Type to represent the base class.
Since the qualifiers are always parsed as nested names, there was an
impedance mismatch when converting these back and forth into types, and
this led to issues in preserving sugar.
The nested names are indeed a better match for these, as the differences
which a QualType can represent cannot be expressed syntatically, and
they represent the use case more exactly, being either dependent or
referring to a CXXRecord, unqualified.
This patch also makes the MemberPointerType able to represent sugar for
a {up/downcast}cast conversion of the base class, although for now the
underlying type is canonical, as preserving the sugar up to that point
requires further work.
As usual, includes a few drive-by fixes in order to make use of the
improvements.
Commit: 468452b0814a3ad04700455af2d225e25a6aecaf
https://github.com/llvm/llvm-project/commit/468452b0814a3ad04700455af2d225e25a6aecaf
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
Log Message:
-----------
[CodeGen] Fix unused variable warning (NFC)
Commit: 541d6c3189cc04b5d6236972093ea3a4892a0ba8
https://github.com/llvm/llvm-project/commit/541d6c3189cc04b5d6236972093ea3a4892a0ba8
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
Log Message:
-----------
[AMDGPU][True16][CodeGen] update VGPRimm for t16 (#131021)
added a `bitcast_fpimm_to_i16` and update the VGPRImm pattern for t16
flow.
This change is following the pattern from the 32bit case
Commit: 7c11d053f6619e9feb73b75353cf6d40f989b8d2
https://github.com/llvm/llvm-project/commit/7c11d053f6619e9feb73b75353cf6d40f989b8d2
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-invalid.mlir
Log Message:
-----------
[mlir][TosaToLinalg] Exit after `notifyMatchFailure` (#132012)
This PR adds `return nullptr` when the shift value of `tosa.mul` is not
constant to prevent a crash. Fixes #131766.
Commit: 221b0117fd21d45098ead779a040a4b939a5c84f
https://github.com/llvm/llvm-project/commit/221b0117fd21d45098ead779a040a4b939a5c84f
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M libc/CMakeLists.txt
R libc/utils/gpu/CMakeLists.txt
R libc/utils/gpu/loader/CMakeLists.txt
R libc/utils/gpu/loader/Loader.h
R libc/utils/gpu/loader/Main.cpp
R libc/utils/gpu/loader/amdgpu/CMakeLists.txt
R libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
R libc/utils/gpu/loader/nvptx/CMakeLists.txt
R libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
M llvm/CMakeLists.txt
M llvm/runtimes/CMakeLists.txt
A llvm/tools/llvm-gpu-loader/CMakeLists.txt
A llvm/tools/llvm-gpu-loader/amdhsa.cpp
A llvm/tools/llvm-gpu-loader/llvm-gpu-loader.cpp
A llvm/tools/llvm-gpu-loader/llvm-gpu-loader.h
A llvm/tools/llvm-gpu-loader/nvptx.cpp
Log Message:
-----------
[LLVM] Make the GPU loader utilities an LLVM tool (#132096)
Summary:
These tools `amdhsa-loader` and `nvptx-loader` are used to execute unit
tests directly on the GPU. We use this for `libc` and `libcxx` unit
tests as well as general GPU experimentation. It looks like this.
```console
> clang++ main.cpp --target=amdgcn-amd-amdhsa -mcpu=native -flto -lc ./lib/amdgcn-amd-amdhsa/crt1.o
> llvm-gpu-loader a.out
Hello World!
```
Currently these are a part of the `libc` project, but this creates
issues as `libc` itself depends on them to run tests. Right now we get
around this by force-including the `libc` project prior to running the
runtimes build so that this dependency can be built first. We should
instead just make this a simple LLVM tool so it's always available.
This has the effect of installing these by default now instead of just
when `libc` was enabled, but they should be relatively small. Right now
this only supports a 'static' configuration. That is, we locate the CUDA
and HSA dependencies at LLVM compile time. In the future we should be
able to provide this by default using `dlopen` and some API.
I don't know if it's required to reformat all of these names since they
used the `libc` naming convention so I just left it for now.
Commit: 00fabd21bce85259a74a64a435874d290ed2da38
https://github.com/llvm/llvm-project/commit/00fabd21bce85259a74a64a435874d290ed2da38
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
A llvm/test/CodeGen/RISCV/csr-first-use-cost.ll
Log Message:
-----------
[RISCV][RegAlloc] Add getCSRFirstUseCost for RISC-V (#131349)
This is based off of 63efd8e7e68bc.
The following table shows the percent change to the dynamic instruction
count when the function in this patch returns 0 (default) versus other
values.
| benchmark | % speedup 1 over 0 | % speedup 4 over 0 | % speedup 16
over 0 | % speedup 64 over 0 | % speedup 128 over 0 |
| --------------- | ---------------------- | --------------------- |
--------------------- | -------------------- | -------------------- |
| 500.perlbench_r | 0.001018570165 | 0.001049508358 | 0.001001106529 |
0.03382582818 | 0.03395354577 |
| 502.gcc_r | 0.02850551412 | 0.02170512371 | 0.01453021263 |
0.06011008637 | 0.1215691521 |
| 505.mcf_r | -0.00009506373338 | -0.00009090057642 | -0.0000860991497 |
-0.00005027849766 | 0.00001251173791 |
| 520.omnetpp_r | 0.2958940288 | 0.2959715925 | 0.2961141505 |
0.2959823497 | 0.2963124341 |
| 523.xalancbmk_r | -0.0327074721 | -0.01037021046 | -0.3226810542 |
0.02127133714 | 0.02765388389 |
| 525.x264_r | 0.0000001381714403 | -0.00000007041540345 |
-0.00000002156399465 | 0.0000002108993364 | 0.0000002463382874 |
| 531.deepsjeng_r | 0.00000000339777238 | 0.000000003874652714 |
0.000000003636212547 | 0.000000003874652714 | 0.000000003159332213 |
| 541.leela_r | 0.0009186059953 | -0.000424159199 | 0.0004984456879 |
0.274948447 | 0.8135521414 |
| 557.xz_r | -0.000000003547118854 | -0.00004896449559 |
-0.00004910691576 | -0.0000491109983 | -0.00004895599589 |
| geomean | 0.03265937388 | 0.03424232324 | -0.00107917442 |
0.07629116165 | 0.1439913192 |
The following table shows the percent change to the runtime when the
function in this patch returns 0 (default) versus other values.
| benchmark | % speedup 1 over 0 | % speedup 4 over 0 | % speedup 16
over 0 | % speedup 64 over 0 | %speedup 128 over 0 |
| --------------- | ------------------ | ------------------ |
------------------- | ------------------- | ------------------- |
| 500.perlbench_r | 0.1722356761 | 0.2269681109 | 0.2596825578 |
0.361573851 | 1.15041305 |
| 502.gcc_r | -0.548415855 | -0.06187002799 | -0.5553684674 |
-0.8876686237 | -0.4668665535 |
| 505.mcf_r | -0.8786414258 | -0.4150938441 | -1.035517726 |
-0.1860770377 | -0.01904825648 |
| 520.omnetpp_r | 0.4130256072 | 0.6595976188 | 0.897332171 |
0.6252625622 | 0.3869467278 |
| 523.xalancbmk_r | 1.318132014 | -0.003927574 | 1.025962975 |
1.090320253 | -0.789206202 |
| 525.x264_r | -0.03112871796 | -0.00167557587 | 0.06932423155 |
-0.1919840015 | -0.1203585732 |
| 531.deepsjeng_r | -0.259516072 | -0.01973455652 | -0.2723227894 |
-0.005417022257 | -0.02222388177 |
| 541.leela_r | -0.3497178495 | -0.3510447393 | 0.1274508001 |
0.6485542452 | 0.2880651727 |
| 557.xz_r | 0.7683565263 | -0.2197509447 | -0.0431183874 |
0.07518130872 | 0.5236853039 |
| geomean | 0.06506952742 | -0.0211865386 | 0.05072694648 | 0.1684530637
| 0.1020533557 |
I chose to set the value to 5 on RISC-V because it has improvement to
both the dynamic IC and the runtime and because it showed good results
empirically and had a similar effect as setting it to higher numbers.
I looked at some diff and it seems like this patch leads to two things:
1. Less spilling -- not spilling the CSR led to better register
allocation and helped us avoid spills down the line
2. Avoid spilling CSR but spill more on paths that static heuristics
estimate as cold.
Commit: df2a56767d7eeb09413e38737d598db749d1bc6d
https://github.com/llvm/llvm-project/commit/df2a56767d7eeb09413e38737d598db749d1bc6d
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M libc/CMakeLists.txt
A libc/utils/gpu/CMakeLists.txt
A libc/utils/gpu/loader/CMakeLists.txt
A libc/utils/gpu/loader/Loader.h
A libc/utils/gpu/loader/Main.cpp
A libc/utils/gpu/loader/amdgpu/CMakeLists.txt
A libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
A libc/utils/gpu/loader/nvptx/CMakeLists.txt
A libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
M llvm/CMakeLists.txt
M llvm/runtimes/CMakeLists.txt
R llvm/tools/llvm-gpu-loader/CMakeLists.txt
R llvm/tools/llvm-gpu-loader/amdhsa.cpp
R llvm/tools/llvm-gpu-loader/llvm-gpu-loader.cpp
R llvm/tools/llvm-gpu-loader/llvm-gpu-loader.h
R llvm/tools/llvm-gpu-loader/nvptx.cpp
Log Message:
-----------
Revert "[LLVM] Make the GPU loader utilities an LLVM tool (#132096)"
This reverts commit 221b0117fd21d45098ead779a040a4b939a5c84f.
Some build failures requiring TargetParser and some warnings to clean
up.
Commit: 523cf65b668e2c7c572c8b5a54e28388d5e955a4
https://github.com/llvm/llvm-project/commit/523cf65b668e2c7c572c8b5a54e28388d5e955a4
Author: TilakChad <49703944+TilakChad at users.noreply.github.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaOverload.cpp
M clang/test/SemaCXX/deduced-return-type-cxx14.cpp
Log Message:
-----------
[Clang] Do not create dependent CallExpr having UnresolvedLookupExpr inside non-dependent context (#124609)
The `UnresolvedLookupExpr` doesn't get looked up and resolved again
while it is inside the non-dependent context. It propagates into the
codegen phase, causing the assertion failure.
We attempt to determine if the current context is dependent before
moving on with the substitution introduced in the
https://github.com/llvm/llvm-project/commit/20a05677f9394d4bc9467fe7bc93a4ebd3aeda61.
This fixes https://github.com/llvm/llvm-project/issues/122892.
---------
Co-authored-by: Sirraide <aeternalmail at gmail.com>
Commit: c73ad7ba204fa05b074c1316b2244063aa10410f
https://github.com/llvm/llvm-project/commit/c73ad7ba204fa05b074c1316b2244063aa10410f
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-unroll.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory.ll
Log Message:
-----------
[VPlan] Add transformation to narrow interleave groups.
This patch adds a new narrowInterleaveGroups transfrom, which tries
convert a plan with interleave groups with VF elements to a plan that
instead replaces the interleave groups with wide loads and stores
processing VF elements.
This effectively is a very simple form of loop-aware SLP, where we
use interleave groups to identify candidates.
This initial version is quite restricted and hopefully serves as a
starting point for how to best model those kinds of transforms. For now
it only transforms load interleave groups feeding store groups.
Depends on #106431.
This lands the main parts of the approved
https://github.com/llvm/llvm-project/pull/106441 as suggested to break
things up a bit more.
Commit: dd191d3d4f970a1a17e180668c3e50e2e7938cdc
https://github.com/llvm/llvm-project/commit/dd191d3d4f970a1a17e180668c3e50e2e7938cdc
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M compiler-rt/lib/ctx_profile/CtxInstrContextNode.h
M compiler-rt/lib/ctx_profile/CtxInstrProfiling.h
M llvm/include/llvm/ProfileData/CtxInstrContextNode.h
M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
Log Message:
-----------
[ctxprof][nfc] Share the definition of FunctionData between compiler-rt and llvm (#132136)
Mechanism to keep the compiler-rt and llvm view of `FunctionData` in sync. Since CtxInstrContextNode.h is exactly the same on both sides (there's an existing test, `compiler-rt/test/ctx_profile/TestCases/check-same-ctx-node.test`, checking that), we capture the structure in a macro that is then generated as `struct` fields on the compiler-rt side, and as `Type` objects on the llvm side. The macro needs to be told how to render a few kinds of fields.
If we add more fields to FunctionData that can be described by the current known types of fields, then the llvm side would automatically be updated. If we need to add more kinds of fields, which we do by adding parameters to the macro, the llvm side (if not updated) would trigger a compilation error.
Commit: 864a83deb0b613a2e957b6c106a4412b54949131
https://github.com/llvm/llvm-project/commit/864a83deb0b613a2e957b6c106a4412b54949131
Author: Cassandra Beckley <cbeckley at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/lib/IR/Type.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.h
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVMCCodeEmitter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstrFormats.td
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/SPIRV/inline/type.coop-matrix.ll
A llvm/test/CodeGen/SPIRV/inline/type.ll
Log Message:
-----------
[SPIR-V] Add support for inline SPIR-V types (#125316)
Using HLSL's [Inline
SPIR-V](https://microsoft.github.io/hlsl-specs/proposals/0011-inline-spirv.html)
features, users have the ability to use
[`SpirvType`](https://microsoft.github.io/hlsl-specs/proposals/0011-inline-spirv.html#types)
to have fine-grained control over the SPIR-V representation of a type.
As explained in the spec, this is useful because it enables vendors to
author headers with types for their own extensions.
As discussed in [Target Extension Types for Inline SPIR-V and Decorated
Types](https://github.com/llvm/wg-hlsl/pull/105), we would like to
represent the HLSL SpirvType type using a 'spirv.Type' target extension
type in LLVM IR. This pull request lowers that type to SPIR-V.
Commit: 3520dc5e7a9a30de2db7e9f6b8b4863aed261ca8
https://github.com/llvm/llvm-project/commit/3520dc5e7a9a30de2db7e9f6b8b4863aed261ca8
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[Vectorize] Fix a build
This patch fixes:
llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp:2263:19: error:
expected ';' after return statement
Commit: 7492666482aececf2a470a8b8a44580d7f8712c3
https://github.com/llvm/llvm-project/commit/7492666482aececf2a470a8b8a44580d7f8712c3
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Implement __builtin_wmemchr (#132254)
Commit: be36f41ff9341c660b59320ede784314c1ece200
https://github.com/llvm/llvm-project/commit/be36f41ff9341c660b59320ede784314c1ece200
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M libcxx/test/std/utilities/memory/specialized.algorithms/specialized.construct/construct_at.pass.cpp
M libcxx/test/std/utilities/memory/specialized.algorithms/specialized.construct/ranges_construct_at.pass.cpp
Log Message:
-----------
[libc++][NFC] Run two tests I'm about to modify a bunch under clang-format
Commit: e60e0641583a144703433579b8f241276637fdb0
https://github.com/llvm/llvm-project/commit/e60e0641583a144703433579b8f241276637fdb0
Author: Jason Molenda <jmolenda at apple.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M lldb/tools/debugserver/source/MacOSX/MachProcess.mm
Log Message:
-----------
[lldb][debugserver] Interrupt should reset outstanding SIGSTOP (#132128)
This fixes an uncommon bug with debugserver controlling an inferior
process that is hitting an internal breakpoint & continuing when
multiple interrupts are sent by SB API to lldb -- with the result being
that lldb never stops the inferior process, ignoring the interrupt/stops
being sent by the driver layer (Xcode, in this case).
In the reproducing setup (which required a machine with unique timing
characteristics), lldb is sent SBProcess::Stop and then shortly after,
SBProcess::SendAsyncInterrupt. The driver process only sees that the
inferior is publicly running at this point, even though it's hitting an
internal breakpoint (new dylib being loaded), disabling the bp, step
instructioning, re-enabling the breakpoint, then continuing.
The packet sequence lldb sends to debugserver looks like
1. vCont;s // instruction step
2. ^c // async interrupt
3. Z.... // re-enable breakpoint
4. c // resume inferior execution
5. ^c // async interrupt
When debugserver needs to interrupt a running process
(`MachProcess::Interrupt`), the main thread in debugserver sends a
SIGSTOP posix signal to the inferior process, and notes that it has sent
this signal by setting `m_sent_interrupt_signo`.
When we send the first async interrupt while instruction stepping, the
signal is sent (probably after the inferior has already stopped) but
lldb can only *receive* the mach exception that includes the SIGSTOP
when the process is running. So at the point of step (3), we have a
SIGSTOP outstanding in the kernel, and
`m_sent_interrupt_signo` is set to SIGSTOP.
When we resume the inferior (`c` in step 4), debugserver sees that
`m_sent_interrupt_signo` is still set for an outstanding SIGSTOP, but at
this point we've already stopped so it's an unnecessary stop. It records
that (1) we've got a SIGSTOP still coming that debugserver sent and (2)
we should ignore it by also setting `m_auto_resume_signo` to the same
signal value.
Once we've resumed the process, the mach exception thread
(`MachTask::ExceptionThread`) receives the outstanding mach exception,
adds it to a queue to be processed
(`MachProcess::ExceptionMessageReceived`) and when we've collected all
outstanding mach exceptions, it calls
`MachProcess::ExceptionMessageBundleComplete` top evaluate them.
`MachProcess::ExceptionMessageBundleComplete` halts the process (without
updating the MachProcess `m_state`) while evaluating them. It sees that
this incoming SIGSTOP was meant to be ignored (`m_auto_resume_signo` is
set), so it `MachProcess::PrivateResume`'s the process again.
At the same time `MachTask::ExceptionThread` is receiving and processing
the ME, `MachProcess::Interrupt` is called with another interrupt that
debugserver received. This method checks that we're still eStateRunning
(we are) but then sees that we have an outstanding SIGSTOP already
(`m_sent_interrupt_signo`) and does nothing, assuming that we will stop
shortly from that one. It then returns to call
`RNBRemote::HandlePacket_last_signal` to print the status -- but because
the process is still `eStateRunning`, this does nothing.
So the first ^c (resulting in a pending SIGSTOP) is received and we
resume the process silently. And the second ^c is ignored because we've
got one interrupt already being processed.
The fix was very simple. In `MachProcess::Interrupt` when we detect that
we have a SIGSTOP out in the wild (`m_sent_interrupt_signo`), we need to
clear `m_auto_resume_signo` which is used to indicate that this SIGSTOP
is meant to be ignored, because it was from before our most recent
resume.
MachProcess::Interrupt holds the `m_exception_and_signal_mutex` mutex
already (after Jonas's commit last week), and all of
`MachProcess::ExceptionMessageBundleComplete` holds that same mutex, so
we know we can modify `m_auto_resume_signo` here and it will be handled
correctly when the outstanding mach exception is finally processed.
rdar://145872120
Commit: ad5cac3b06c3cb41397acc1fc96beae9b460f20c
https://github.com/llvm/llvm-project/commit/ad5cac3b06c3cb41397acc1fc96beae9b460f20c
Author: Jason Molenda <jmolenda at apple.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M lldb/test/API/tools/lldb-server/register-reading/TestGdbRemoteGPacket.py
M lldb/tools/debugserver/source/RNBRemote.cpp
M lldb/tools/debugserver/source/RNBRemote.h
Log Message:
-----------
[lldb][debugserver] remove g/G packet handling from debugserver (#132127)
In 2013 we added the QSaveRegisterState and QRestoreRegisterState
packets to checkpoint a thread's register state while executing an
inferior function call, instead of using the g packet to read all
registers into lldb, then the G packet to set them again after the func
call.
Since then, lldb has not sent g/G (except as a bug) - it either asks for
registers individually (p/P) or or asks debugserver to save and restore
the entire register set with these lldb extensions.
Felipe recently had a codepath that fell back to using g/G and found
that it does not work with the modern signed fp/sp/pc/lr registers that
we can get -- it sidesteps around the clearing of the non-addressable
bits that we do when reading/writing them, and results in a crash. (
https://github.com/llvm/llvm-project/pull/132079 )
Instead of fixing that issue, I am removing g/G from debugserver because
it's not needed by lldb, and it will would be easy for future bugs to
creep in to this packet that lldb should not use, but it can
accidentally fall back to and result in subtle bugs.
This does mean that a debugger using debugserver on darwin which doesn't
use QSaveRegisterState/QRestoreRegisterState will need to fall back to
reading & writing each register individually. I'm open to re-evaluating
this decision if this proves to be needed, and supporting these lldb
extensions is onerous.
Commit: 5151e6d7febb73ed7085667b4ef55d8af7d058b5
https://github.com/llvm/llvm-project/commit/5151e6d7febb73ed7085667b4ef55d8af7d058b5
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/NestedNameSpecifier.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.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/TemplateArgumentHasher.cpp
M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
M clang/test/AST/ast-dump-templates.cpp
M clang/test/AST/ast-dump-types-json.cpp
M clang/test/AST/attr-print-emit.cpp
M clang/test/Analysis/cxx-uninitialized-object-ptr-ref.cpp
M clang/test/CXX/class.access/p6.cpp
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p5.cpp
M clang/test/Index/print-type.cpp
M clang/test/SemaCXX/addr-of-overloaded-function.cpp
M clang/test/SemaCXX/builtin-ptrtomember-ambig.cpp
M clang/test/SemaCXX/calling-conv-compat.cpp
M clang/test/SemaCXX/err_init_conversion_failed.cpp
M clang/test/SemaCXX/member-pointer.cpp
M clang/test/SemaOpenACC/combined-construct-if-ast.cpp
M clang/test/SemaOpenACC/combined-construct-num_workers-ast.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-intexpr-clause-ast.cpp
M clang/test/SemaOpenACC/data-construct-if-ast.cpp
M clang/test/SemaTemplate/instantiate-member-pointers.cpp
M clang/tools/libclang/CXType.cpp
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
Revert "Reland: [clang] preserve class type sugar when taking pointer to member" (#132280)
Reverts llvm/llvm-project#132234
Needs to be reverted due to dependency.
This blocks reverting another PR, see here:
https://github.com/llvm/llvm-project/pull/131965#issuecomment-2741619498
Commit: 335a4614dee4123ff4f86e6400fc6a305766e227
https://github.com/llvm/llvm-project/commit/335a4614dee4123ff4f86e6400fc6a305766e227
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/Type.cpp
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaStmt.cpp
Log Message:
-----------
Revert "[clang] NFC: Clear some uses of MemberPointerType::getClass" (#132281)
Reverts llvm/llvm-project#131965
Reverted due to issue reported here:
https://github.com/llvm/llvm-project/pull/131965#issuecomment-2741619498
Commit: a87a64b2e487995f9de90a614c7caa7a888147df
https://github.com/llvm/llvm-project/commit/a87a64b2e487995f9de90a614c7caa7a888147df
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
A clang-tools-extra/test/clang-doc/DR-131697.cpp
Log Message:
-----------
[clang-doc] Avoid deref of invalid std::optional (#131939)
Since our existing guard is insufficient to prevent accessing the
std::optional when in an invalid state, guard the access with
`.value_or()`. This maintains the desired behavior, without running into
UB.
The new test should prevent regressions.
Fixes #131697
Commit: 3923a6b09c4e104391e2dd12b984190066fed6ec
https://github.com/llvm/llvm-project/commit/3923a6b09c4e104391e2dd12b984190066fed6ec
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang-tools-extra/test/clang-doc/single-file-public.cpp
M clang-tools-extra/test/clang-doc/single-file.cpp
M clang-tools-extra/test/clang-doc/test-path-abs.cpp
Log Message:
-----------
[clang-doc][NFC] Remove unnecessary directory cleanup (#132101)
The tests all remove the directory at test start, and it only prevents
inspecting the test artifacts to remove them at the end of the test run.
Commit: 3fbc9b9efc669a236ab21ab06f854bd9ad751af3
https://github.com/llvm/llvm-project/commit/3fbc9b9efc669a236ab21ab06f854bd9ad751af3
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang-tools-extra/clang-doc/assets/index.js
Log Message:
-----------
[clang-doc] Correct improper file paths in HTML output (#132103)
In index.js the logic of the ternary operator was backwards, preventing
us from generating the correct file paths, or relative paths in the HTML
output.
Commit: 09ff6db0dcb3ea223282a35aa4f9dc9aaf358c05
https://github.com/llvm/llvm-project/commit/09ff6db0dcb3ea223282a35aa4f9dc9aaf358c05
Author: Michael Jones <michaelrj at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
Log Message:
-----------
[bazel] add missing dep to errno_test_helpers (#132278)
Bazel doesn't complain, but downstream it's causing build failures.
Commit: f23a6ef54c104b357e140e7782fd66248d9382f1
https://github.com/llvm/llvm-project/commit/f23a6ef54c104b357e140e7782fd66248d9382f1
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/openmp-target-nesting-in-host-ops.mlir
Log Message:
-----------
[flang][OpenMP] Process `omp.atomic.update` while translating scopes for target device (#132165)
Fixes a bug introduced by
https://github.com/llvm/llvm-project/pull/130078.
For non-BlockArgOpenMPOpInterface ops, we also want to map their entry
block arguments to their operands, if any. For the current support in
the OpenMP dialect, the table below lists all ops that have arguments
(SSA operands and/or attributes) and not target-related. Of all these
ops, we need to only process `omp.atomic.update` since it is the only op
that has SSA operands & an attached region. Therefore, the region's
entry block arguments must be mapped to the op's operands in case they
are referenced inside the region.
| op | operands? | region(s)? | parent is func? | processed? |
|--------------|-------------|------------|------------------|-------------|
| atomic.read | yes | no | yes | no |
| atomic.write | yes | no | yes | no |
| atomic.update | yes | yes | yes | yes |
| critical | no | no | yes | no |
| declare_mapper | no | yes | no | no |
| declare_reduction | no | yes | no | no |
| flush | yes | no | yes | no |
| private | no | yes | yes | no |
| threadprivate | yes | no | yes | no |
| yield | yes | no | yes | no |
Commit: 3dc98087c8cacde1634b8ae7ac05e3c080d2a1f1
https://github.com/llvm/llvm-project/commit/3dc98087c8cacde1634b8ae7ac05e3c080d2a1f1
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Analysis/BUILD.gn
Log Message:
-----------
[gn build] Port 08dda4dcbf64
Commit: 8e777ff5bb1ad46794f8cbbad27724f59e0f2ce0
https://github.com/llvm/llvm-project/commit/8e777ff5bb1ad46794f8cbbad27724f59e0f2ce0
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port 73cd84a90e07
Commit: cc86d7cb191a64489e837c68f299abb930f5c6cb
https://github.com/llvm/llvm-project/commit/cc86d7cb191a64489e837c68f299abb930f5c6cb
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
Log Message:
-----------
Initialize aarch64-cond-br-tuning pass (#132087)
The call to the initializeAArch64CondBrTuningPass function is missing in
the AArch64TargetMachine LLVMInitializeAArch64Target function.
This means that the pass is not in the pass registry and options such as
-run-pass=aarch64-cond-br-tuning and
-stop-after=aarch64-cond-br-tuning cannot be used. This patch fixes that
issue.
Commit: e86d627a8b0278556d18e73b9823761ca8fe24a5
https://github.com/llvm/llvm-project/commit/e86d627a8b0278556d18e73b9823761ca8fe24a5
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
A llvm/test/CodeGen/RISCV/rvv/stack-slot-coloring.ll
A llvm/test/CodeGen/RISCV/rvv/stack-slot-coloring.mir
Log Message:
-----------
[RISCV] Add coverage for vector stack slot coloring and dead copy elim
Stack slot coloring already works, but we didn't have coverage.
Dead stack slot copy elimination (after stack slot coloring) does not, and will
be included in an upcoming change.
Commit: ff21b50509c88606a8220002865c3e42e825a3b3
https://github.com/llvm/llvm-project/commit/ff21b50509c88606a8220002865c3e42e825a3b3
Author: Vy Nguyen <vyng at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M lldb/include/lldb/Core/Telemetry.h
M lldb/source/Core/Telemetry.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/Target.cpp
Log Message:
-----------
Reapply LLDB-Telemetry TargetInfo branch (pr/127834) (#132043)
New changes: add check to avoid accessing invalid obj
Commit: 30bb0c443e163b244d663c88821524b6e747747b
https://github.com/llvm/llvm-project/commit/30bb0c443e163b244d663c88821524b6e747747b
Author: John Harrison <harjohn at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M lldb/tools/lldb-dap/CMakeLists.txt
A lldb/tools/lldb-dap/DAPError.cpp
A lldb/tools/lldb-dap/DAPError.h
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Handler/SourceRequestHandler.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolBase.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolBase.h
Log Message:
-----------
[lldb-dap] Adding a DAPError for showing users error messages. (#132255)
The `DAPError` can be used to craft an error message that is displayed
to a user (with showUser=true).
Any request handler implementation using subclassing `RequestHandler<>`
should be able to use this.
I updated SourceRequestHandler to report DAPError's specifically.
Commit: 88a51d23927aa36694166fe5edd7831ab90e5a75
https://github.com/llvm/llvm-project/commit/88a51d23927aa36694166fe5edd7831ab90e5a75
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
Log Message:
-----------
[Clang][NFC] Code cleanup in CGBuiltin.cpp (#132060)
- Use `Intrinsic::` directly instead of `llvm::Intrinsic::`.
- Eliminate redundant `nullptr` for some `CreateIntrinsic` calls.
- Eliminate redundant `ArrayRef` casts.
- Use C++17 structured binding instead of `std::tie`.
Commit: afae7c91e19f0e9d6f1e03ebada64d740894abc7
https://github.com/llvm/llvm-project/commit/afae7c91e19f0e9d6f1e03ebada64d740894abc7
Author: Petr Hosek <phosek at google.com>
Date: 2025-03-20 (Thu, 20 Mar 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/stdio/CMakeLists.txt
M libc/src/stdio/baremetal/CMakeLists.txt
M libc/src/stdio/baremetal/getchar.cpp
A libc/src/stdio/baremetal/scanf.cpp
A libc/src/stdio/baremetal/scanf_internal.h
A libc/src/stdio/baremetal/vscanf.cpp
R libc/src/stdio/fscanf.cpp
M libc/src/stdio/generic/CMakeLists.txt
A libc/src/stdio/generic/fscanf.cpp
A libc/src/stdio/generic/scanf.cpp
A libc/src/stdio/generic/vfscanf.cpp
A libc/src/stdio/generic/vscanf.cpp
R libc/src/stdio/scanf.cpp
M libc/src/stdio/scanf_core/CMakeLists.txt
R libc/src/stdio/vfscanf.cpp
R libc/src/stdio/vscanf.cpp
Log Message:
-----------
[libc] Support for scanf on baremetal (#131043)
This uses the templatized scanf Reader interface introduced in #131037.
Commit: a5c7f81a9aaa1995aeaa534e7a7bc1449e7a1595
https://github.com/llvm/llvm-project/commit/a5c7f81a9aaa1995aeaa534e7a7bc1449e7a1595
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/stores-of-loads-merging.ll
Log Message:
-----------
[RISCV] Add test coverage for DAG store merging of floating point values
Commit: 6038077dde965926d621860382e00e147cb7fbe8
https://github.com/llvm/llvm-project/commit/6038077dde965926d621860382e00e147cb7fbe8
Author: A. Jiang <de34 at live.cn>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/version
M libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] Bump `__cpp_lib_constexpr_algorithms` for P2562R1 in C++26 (#132075)
Completes P2562R1.
Commit: f25185b57985e34c03517008d5af311689895819
https://github.com/llvm/llvm-project/commit/f25185b57985e34c03517008d5af311689895819
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/test/CIR/Transforms/canonicalize.cir
Log Message:
-----------
[CIR] Fix unary op folding (#132269)
Unary ops had previously been omitted from the list of ops handled in
the CIRCanonicalizePass. Although the incubator code doesn't use them
directly, the mlir folding code does.
This change enables folding of unary ops by adding them to the list.
Commit: fe6bced9e40f7d4c35550c51ef9cdc7be2a055e7
https://github.com/llvm/llvm-project/commit/fe6bced9e40f7d4c35550c51ef9cdc7be2a055e7
Author: Michael Jones <michaelrj at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][bazel] fix scanf after #131043 (#132305)
The scanf and fscanf implementations were moved into /generic, update
the bazel targets.
Commit: 7e4029d52a4bfb101f7d009799e54c51e7ca7467
https://github.com/llvm/llvm-project/commit/7e4029d52a4bfb101f7d009799e54c51e7ca7467
Author: JaydeepChauhan14 <chauhan.jaydeep.ashwinbhai at intel.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
A llvm/test/CodeGen/X86/isel-sqrt.ll
R llvm/test/CodeGen/X86/sqrt.ll
Log Message:
-----------
[X86][NFC] Added/Updated SQRT function testcases (#132205)
- Added test for x86_fp80 type for SQRT.
- Added global-isel runs as precommit testing for SQRT.
Commit: 92fc748f0e6b4cc3a06b5d1de15b8b91404b7296
https://github.com/llvm/llvm-project/commit/92fc748f0e6b4cc3a06b5d1de15b8b91404b7296
Author: Lang Hames <lhames at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.h
Log Message:
-----------
[ORC] Remove extraneous whitespace. NFC.
Commit: 0ffe83feaca02cf1c7a25c559c72cc16813a2f86
https://github.com/llvm/llvm-project/commit/0ffe83feaca02cf1c7a25c559c72cc16813a2f86
Author: yonghong-song <yhs at fb.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm/IR/Instructions.h
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/test/CodeGen/WebAssembly/naked-fn-with-frame-pointer.ll
A llvm/test/CodeGen/X86/naked-fn-with-unreachable-trap.ll
Log Message:
-----------
[SelectionDAG] Not issue TRAP node if naked function (#132147)
In [1], Nikita Popov suggested that during lowering 'unreachable' insn
should not generate extra code for naked functions, and this applies to
all architectures. Note that for naked functions, 'unreachable' insn is
necessary in IR since the basic block needs a terminator to end.
This patch checked whether a function is naked function or not. If it is
a naked function, 'unreachable' insn will not generate ISD::TRAP.
[1] https://github.com/llvm/llvm-project/pull/131731
Co-authored-by: Yonghong Song <yonghong.song at linux.dev>
Commit: 902078350e0dd2b5a7333328153032f05dc4b81c
https://github.com/llvm/llvm-project/commit/902078350e0dd2b5a7333328153032f05dc4b81c
Author: Krishna Pandey <47917477+krishna2803 at users.noreply.github.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M libc/src/math/generic/cbrtf.cpp
Log Message:
-----------
[libc][math] Add missing parenthesis in sollya command (#132298)
This PR adds the missing opening parenthesis for sollya command comment
in `libc/src/math/generic/cbrtf.cpp#L28`.
Signed-off-by: krishna2803 <kpandey81930 at gmail.com>
Commit: 631769f2a05a082eafa03b7f99502381da704d7d
https://github.com/llvm/llvm-project/commit/631769f2a05a082eafa03b7f99502381da704d7d
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M lld/ELF/Arch/RISCV.cpp
M lld/test/ELF/riscv-relax-hi20-lo12.s
Log Message:
-----------
[LLD][RISCV] Add relaxation for absolute int12 Hi20Lo12 (#86124)
If we have an absolute address whose high bits are known to be a sign
extend of the low 12 bits, we can avoid emitting the LUI entirely. This
is implemented in an analogous manner to the gp relative relocations -
defining an internal usage relocation type.
Since 12 bits (really 11 since the high bit must be zero in user code)
is less than one page, all of these offsets fit in the null page. As
such, the only application of these is likely to be undefined weak
symbols except for embedded use cases. I'm mostly posting this for
completeness sake.
Commit: 2d876ed33ee38145ae7b44f3d82a8142a78fd5b8
https://github.com/llvm/llvm-project/commit/2d876ed33ee38145ae7b44f3d82a8142a78fd5b8
Author: hev <wangrui at loongson.cn>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
M llvm/test/CodeGen/LoongArch/addrspacecast.ll
M llvm/test/CodeGen/LoongArch/alloca.ll
M llvm/test/CodeGen/LoongArch/analyze-branch.ll
M llvm/test/CodeGen/LoongArch/bnez-beqz.ll
M llvm/test/CodeGen/LoongArch/calling-conv-common.ll
M llvm/test/CodeGen/LoongArch/calling-conv-lp64d.ll
M llvm/test/CodeGen/LoongArch/calling-conv-lp64s.ll
M llvm/test/CodeGen/LoongArch/can-not-realign-stack.ll
M llvm/test/CodeGen/LoongArch/double-br-fcmp.ll
M llvm/test/CodeGen/LoongArch/double-lround.ll
M llvm/test/CodeGen/LoongArch/duplicate-returns-for-tailcall.ll
M llvm/test/CodeGen/LoongArch/eh-dwarf-cfa.ll
M llvm/test/CodeGen/LoongArch/exception-pointer-register.ll
M llvm/test/CodeGen/LoongArch/expand-call.ll
M llvm/test/CodeGen/LoongArch/float-br-fcmp.ll
M llvm/test/CodeGen/LoongArch/float-lround.ll
M llvm/test/CodeGen/LoongArch/fp-expand.ll
M llvm/test/CodeGen/LoongArch/fp-max-min.ll
M llvm/test/CodeGen/LoongArch/fp-maximumnum-minimumnum.ll
M llvm/test/CodeGen/LoongArch/fp-reciprocal.ll
M llvm/test/CodeGen/LoongArch/fp-rounding.ll
M llvm/test/CodeGen/LoongArch/fp-trunc-store.ll
M llvm/test/CodeGen/LoongArch/fp16-promote.ll
M llvm/test/CodeGen/LoongArch/frame.ll
M llvm/test/CodeGen/LoongArch/frint.ll
M llvm/test/CodeGen/LoongArch/fsqrt.ll
M llvm/test/CodeGen/LoongArch/ghc-cc.ll
M llvm/test/CodeGen/LoongArch/intrinsic-csr-side-effects.ll
M llvm/test/CodeGen/LoongArch/intrinsic-iocsr-side-effects.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomic-cmpxchg-128.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-fp.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/call.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
M llvm/test/CodeGen/LoongArch/lasx/fpowi.ll
M llvm/test/CodeGen/LoongArch/libcall-extend.ll
M llvm/test/CodeGen/LoongArch/lsx/fpowi.ll
M llvm/test/CodeGen/LoongArch/machinelicm-address-pseudos.ll
M llvm/test/CodeGen/LoongArch/memcmp.ll
M llvm/test/CodeGen/LoongArch/naked-fn-with-frame-pointer.ll
M llvm/test/CodeGen/LoongArch/nomerge.ll
M llvm/test/CodeGen/LoongArch/numeric-reg-names.ll
M llvm/test/CodeGen/LoongArch/sextw-removal.ll
M llvm/test/CodeGen/LoongArch/shrinkwrap.ll
M llvm/test/CodeGen/LoongArch/soft-fp-to-int.ll
M llvm/test/CodeGen/LoongArch/spill-reload-cfr.ll
M llvm/test/CodeGen/LoongArch/split-sp-adjust.ll
M llvm/test/CodeGen/LoongArch/stack-realignment-with-variable-sized-objects.ll
M llvm/test/CodeGen/LoongArch/stack-realignment.ll
M llvm/test/CodeGen/LoongArch/statepoint-call-lowering.ll
M llvm/test/CodeGen/LoongArch/tail-calls.ll
M llvm/test/CodeGen/LoongArch/target-abi-from-triple-edge-cases.ll
M llvm/test/CodeGen/LoongArch/tls-models.ll
M llvm/test/CodeGen/LoongArch/unaligned-memcpy-inline.ll
M llvm/test/CodeGen/LoongArch/vararg.ll
M llvm/test/CodeGen/LoongArch/vector-fp-imm.ll
Log Message:
-----------
[llvm][LoongArch] Changing the default code model from `small` to `medium` for 64-bit (#132173)
Link: https://discourse.llvm.org/t/rfc-changing-the-default-code-model-for-loongarch
Commit: 30ff508614c90311509adc0890e32e7f86ec4fb8
https://github.com/llvm/llvm-project/commit/30ff508614c90311509adc0890e32e7f86ec4fb8
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
Log Message:
-----------
[NVPTX] Auto-Upgrade llvm.nvvm.swap.lo.hi.b64 to llvm.fshl (#132098)
After 3c8c2914e067e132af951f70d2b3577fe049e19a the lowering of 64-bit
funnel shifts has been improved to the point where this intrinsic is no
longer needed.
Commit: 969ac10cb3c0e7aaf1e09fffc92b56170576433a
https://github.com/llvm/llvm-project/commit/969ac10cb3c0e7aaf1e09fffc92b56170576433a
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Support/MD5.cpp
Log Message:
-----------
[support][nfc] MD5: Undef macros after use (#132132)
I'm experimenting with amalgamating Support lib into single cpp and
leaking a bunch of 1-letter macros is not nice.
Commit: 8d825cb4e2d28161ad498d6651ce4413f7d96125
https://github.com/llvm/llvm-project/commit/8d825cb4e2d28161ad498d6651ce4413f7d96125
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILLegalizePass.cpp
Log Message:
-----------
[DirectX] Address PR comments to #131221 (#131706)
- [x] [Don't include static inside anonymous
namespace](https://github.com/llvm/llvm-project/pull/131221#discussion_r1999924822)
- [x] [Use
DenseMap](https://github.com/llvm/llvm-project/pull/131221#discussion_r1999922148)
- [x] [remove
{}](https://github.com/llvm/llvm-project/pull/131221#discussion_r1999921283)
- [x] [remove std::stack with llvm::reverse of
SmallVector](https://github.com/llvm/llvm-project/pull/131221#discussion_r1999946122)
- [x] [replace std::vector with
llvm::SmallVector](https://github.com/llvm/llvm-project/pull/131221#discussion_r1999915308)
- [x] [Remove legalize comment
block](https://github.com/llvm/llvm-project/pull/131221#discussion_r1999903366)
and [double comment
block](https://github.com/llvm/llvm-project/pull/131221#discussion_r1999903747)
- [x] [Refactor fixI8TruncUseChain to remove
nesting](https://github.com/llvm/llvm-project/pull/131221#discussion_r2004157432)
- [x] [add asserts on
assumptions](https://github.com/llvm/llvm-project/pull/131221#discussion_r2004170759)
Commit: f01b56ffb3bee6606063ab4e6e8883eb2e4a48ea
https://github.com/llvm/llvm-project/commit/f01b56ffb3bee6606063ab4e6e8883eb2e4a48ea
Author: Sirraide <aeternalmail at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/include/clang/Basic/Diagnostic.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/test/AST/ByteCode/if.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg3xx.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p5.cpp
M clang/test/Misc/warning-flags.c
M clang/test/Parser/cxx1z-decomposition.cpp
M clang/test/Parser/decomposed-condition.cpp
M clang/test/SemaCXX/cxx98-compat.cpp
M clang/test/SemaObjCXX/message.mm
M clang/test/SemaTemplate/temp_arg_nontype.cpp
M clang/test/SemaTemplate/typename-specifier-4.cpp
M clang/test/SemaTemplate/typename-specifier.cpp
Log Message:
-----------
[Clang] [NFC] Introduce helpers for defining compatibilty warnings (#132129)
This introduces some tablegen helpers for defining compatibility
warnings. The main aim of this is to both simplify adding new
compatibility warnings as well as to unify the naming of compatibility
warnings.
I’ve refactored ~half of the compatiblity warnings (that follow the
usual scheme) in `DiagnosticSemaKinds.td` for illustration purposes and
also to simplify/unify the wording of some of them (I also corrected a
typo in one of them as a drive-by fix).
I haven’t (yet) migrated *all* warnings even in that one file, and there
are some more specialised ones for which the scheme I’ve established
here doesn’t work (e.g. because they’re warning+error instead of
warning+extwarn; however, warning+extension *is* supported), but the
point of this isn’t to implement *all* compatibility-related warnings
this way, only to make the common case a bit easier to handle.
This currently also only handles C++ compatibility warnings, but it
should be fairly straight-forward to extend the tablegen code so it can
also be used for C compatibility warnings (if this gets merged, I’m
planning to do that in a follow-up pr).
The vast majority of compatibility warnings are emitted by writing
```c++
Diag(Loc, getLangOpts().CPlusPlusYZ ? diag::ext_... : diag::warn_...)
```
in accordance with which I’ve chosen the following naming scheme:
```c++
Diag(Loc, getLangOpts().CPlusPlusYZ ? diag::compat_cxxyz_foo : diag::compat_pre_cxxyz_foo)
```
That is, for a warning about a C++20 feature—i.e. C++≤17
compatibility—we get:
```c++
Diag(Loc, getLangOpts().CPlusPlus20 ? diag::compat_cxx20_foo : diag::compat_pre_cxx20_foo)
```
While there is an argument to be made against writing ‘`compat_cxx20`’
here since is technically a case of ‘C++17 compatibility’ and not ‘C++20
compatibility’, I at least find this easier to reason about, because I
can just write the same number 3 times instead of having to use
`ext_cxx20_foo` but `warn_cxx17_foo`. Instead, I like to read this as a
warning about the ‘compatibility *of* a C++20 feature’ rather than
‘*with* C++17’.
I also experimented with moving all compatibility warnings to a separate
file, but 1. I don’t think it’s worth the effort, and 2. I think it
hurts compile times a bit because at least in my testing I felt that I
had to recompile more code than if we just keep e.g. Sema-specific
compat warnings in the Sema diagnostics file.
Instead, I’ve opted to put them all in the same place within any one
file; currently this is a the very top but I don’t really have strong
opinions about this.
Commit: 19d2023a6668cb4964484fb93cf0a076aaef6fbc
https://github.com/llvm/llvm-project/commit/19d2023a6668cb4964484fb93cf0a076aaef6fbc
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/lib/Headers/avx10_2_512convertintrin.h
M clang/lib/Headers/avx10_2_512satcvtdsintrin.h
M clang/lib/Headers/avx10_2_512satcvtintrin.h
M clang/lib/Headers/avx10_2convertintrin.h
M clang/lib/Headers/avx10_2satcvtdsintrin.h
M clang/lib/Headers/avx10_2satcvtintrin.h
M clang/test/CodeGen/X86/avx10_2_512convert-builtins.c
M clang/test/CodeGen/X86/avx10_2_512satcvt-builtins-error.c
M clang/test/CodeGen/X86/avx10_2_512satcvt-builtins.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins.c
M clang/test/CodeGen/X86/avx10_2convert-builtins.c
M clang/test/CodeGen/X86/avx10_2satcvt-builtins.c
M clang/test/CodeGen/X86/avx10_2satcvtds-builtins-x64.c
M clang/test/CodeGen/X86/avx10_2satcvtds-builtins.c
Log Message:
-----------
[X86][AVX10.2] Use 's_' for saturate-convert intrinsics (#131592)
- Add '_' after cvt[t]s intrinsics when 's' is for saturation;
- Add 's_' for all ipcvt[t] intrinsics since they are all saturation
ones;
- Move 's' after 'cvt' and add '_' after it for prior `biass`
intrinsics;
This is to solve potential confusion since 's' before a type usually
represents for scalar.
Synced with GCC folks and they will change in the same way.
Commit: 0ca10ef51bc977c1c0cacd2fce15eec37968b8a4
https://github.com/llvm/llvm-project/commit/0ca10ef51bc977c1c0cacd2fce15eec37968b8a4
Author: Mallikarjuna Gouda <mgouda at mips.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M clang/lib/Basic/Targets/Mips.cpp
M clang/lib/Driver/ToolChains/Arch/Mips.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/test/Driver/mips-abi.c
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/Mips/Mips.td
M llvm/lib/Target/Mips/MipsSubtarget.h
Log Message:
-----------
[MIPS] Add MIPS i6400 and i6500 processors (#130587)
The i6400 and i6500 are high performance multi-core microprocessors from
MIPS that provide best in class power efficiency for use in
system-on-chip (SoC) applications. i6400 and i6500 implements Release 6
of the MIPS64 Instruction Set Architecture with full hardware
multithreading and hardware virtualization support.
Commit: c177dbe484b8844874e096dc825fa9a9a1dc1e6b
https://github.com/llvm/llvm-project/commit/c177dbe484b8844874e096dc825fa9a9a1dc1e6b
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/MCExpr.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86EncodingOptimization.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCExpr.h
M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/lib/Target/X86/X86TargetObjectFile.cpp
M llvm/lib/Target/X86/X86TargetObjectFile.h
Log Message:
-----------
Move X86-specific MCSymbolRefExpr::VariantKind to X86MCExpr::Specifier
Move target-specific members outside of MCSymbolRefExpr::VariantKind
(a legacy interface I am eliminating). Most changes are mechanic,
except:
* ELFObjectWriter::shouldRelocateWithSymbol
* The legacy generic code uses `ELFObjectWriter::fixSymbolsInTLSFixups`
to set `STT_TLS` (and use an unnecessary expression walk). The better
way is to do this in `getRelocType`, which I have done for
AArch64, PowerPC, and RISC-V.
In the future, we should encode expressions with a relocation specifier
as X86MCExpr and use MCValue::RefKind to hold the specifier of the
relocatable expression.
https://maskray.me/blog/2025-03-16-relocation-generation-in-assemblers
While here, rename "Modifier' to "Specifier":
> "Relocation modifier", though concise, suggests adjustments happen during the linker's relocation step rather than the assembler's expression evaluation. I landed on "relocation specifier" as the winner. It's clear, aligns with Arm and IBM’s usage, and fits the assembler's role seamlessly.
Pull Request: https://github.com/llvm/llvm-project/pull/132149
Commit: 87adafcd2e248fa69d1f776a9e60f95df03b885d
https://github.com/llvm/llvm-project/commit/87adafcd2e248fa69d1f776a9e60f95df03b885d
Author: Qi Zhao <zhaoqi01 at loongson.cn>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/fix-tle-le-sym-type.ll
Log Message:
-----------
[LoongArch] Pre-commit test for fixing tls-le symbol type
The symbol type of tls-le must be `TLS`, it was incorrectly set
as `NOTYPE`.
A later commit will fix it.
Commit: 7d742f97b035f8dd9adaeccb98a28d1b7586f343
https://github.com/llvm/llvm-project/commit/7d742f97b035f8dd9adaeccb98a28d1b7586f343
Author: S. B. Tam <cpplearner at outlook.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++][test] Guard uses of `_LIBCPP_HAS_THREADS` in FTM tests (#132258)
Commit: 4d5a963eaf6ad209487a321dee7f0cd2a0f98477
https://github.com/llvm/llvm-project/commit/4d5a963eaf6ad209487a321dee7f0cd2a0f98477
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/VE/AsmParser/VEAsmParser.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEELFObjectWriter.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.h
M llvm/lib/Target/VE/VEAsmPrinter.cpp
M llvm/lib/Target/VE/VEMCInstLower.cpp
Log Message:
-----------
[VE] Rename VariantKind to Specifier and clean up code
Commit: c8a9a4109ac7756af3f0f5aab8c70e686a2f30b7
https://github.com/llvm/llvm-project/commit/c8a9a4109ac7756af3f0f5aab8c70e686a2f30b7
Author: Sergei Lebedev <185856+superbobry at users.noreply.github.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M mlir/lib/Bindings/Python/IRCore.cpp
M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
M mlir/test/python/ir/operation.py
Log Message:
-----------
[MLIR] [python] A few improvements to the Python bindings (#131686)
* `PyRegionList` is now sliceable. The dialect bindings generator seems
to assume it is sliceable already (!), yet accessing e.g. `cases` on
`scf.IndexedSwitchOp` raises a `TypeError` at runtime.
* `PyBlockList` and `PyOperationList` support negative indexing. It is
common for containers to do that in Python, and most container in the
MLIR Python bindings already allow the index to be negative.
Commit: aa4e6d846fceed9e0fe275f6486dc8ccee9caf0a
https://github.com/llvm/llvm-project/commit/aa4e6d846fceed9e0fe275f6486dc8ccee9caf0a
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/Mips/MipsMCInstLower.cpp
M llvm/lib/Target/Mips/MipsMCInstLower.h
Log Message:
-----------
[Mips] Rename MipsExprKind to Specifier
Follow the X86 renaming.
> "Relocation modifier" suggests adjustments happen during the linker's relocation step rather than the assembler's expression evaluation.
> "Relocation specifier" is clear, aligns with Arm and IBM’s usage, and fits the assembler's role seamlessly.
In addition, rename MipsMCExpr::getKind, which confusingly shadows the base class getKind.
Commit: c2692afc0a92cd5da140dfcdfff7818a5b8ce997
https://github.com/llvm/llvm-project/commit/c2692afc0a92cd5da140dfcdfff7818a5b8ce997
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFStreamer.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.h
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCTargetStreamer.h
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCMCInstLower.cpp
Log Message:
-----------
[PowerPC] Rename VariantKind to Specifier
Follow the X86 and Mips renaming.
> "Relocation modifier" suggests adjustments happen during the linker's relocation step rather than the assembler's expression evaluation.
> "Relocation specifier" is clear, aligns with Arm and IBM’s usage, and fits the assembler's role seamlessly.
In addition, rename *MCExpr::getKind, which confusingly shadows the base class getKind.
Commit: 13bb2f450ef9f64f393fe5527e5ac68362af8ccd
https://github.com/llvm/llvm-project/commit/13bb2f450ef9f64f393fe5527e5ac68362af8ccd
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmInfo.h
M llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h
M llvm/lib/MC/MCAsmInfo.cpp
M llvm/lib/MC/MCExpr.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.cpp
Log Message:
-----------
[MC] Rename some VariantKind functions to use Specifier
Use the more appropriate term "relocation specifier" and avoid the
variable name `Kind`, which conflicts with MCExpr and FixupKind.
Commit: 599005686a1c27ffe97bb4eb07fcd98359a2af99
https://github.com/llvm/llvm-project/commit/599005686a1c27ffe97bb4eb07fcd98359a2af99
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/include/llvm/Analysis/IVDescriptors.h
M llvm/lib/Analysis/MemorySSA.cpp
M llvm/lib/Analysis/PhiValues.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/InlineSpiller.cpp
M llvm/lib/CodeGen/InterleavedAccessPass.cpp
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
M llvm/lib/CodeGen/MachineCopyPropagation.cpp
M llvm/lib/CodeGen/MachinePipeliner.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/RDFGraph.cpp
M llvm/lib/CodeGen/RDFLiveness.cpp
M llvm/lib/CodeGen/TailDuplicator.cpp
M llvm/lib/IR/LegacyPassManager.cpp
M llvm/lib/IR/Metadata.cpp
M llvm/lib/IR/ReplaceConstant.cpp
M llvm/lib/IR/SafepointIRVerifier.cpp
M llvm/lib/TableGen/SetTheory.cpp
M llvm/tools/llvm-exegesis/lib/Clustering.cpp
M llvm/tools/llvm-objdump/llvm-objdump.cpp
M llvm/tools/llvm-profgen/ProfiledBinary.cpp
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
M llvm/utils/TableGen/OptionParserEmitter.cpp
Log Message:
-----------
[llvm] Use *Set::insert_range (NFC) (#132325)
DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range. This patch replaces:
Dest.insert(Src.begin(), Src.end());
with:
Dest.insert_range(Src);
This patch does not touch custom begin like succ_begin for now.
Commit: 3041fa6c7a3033040dce0933455be014760c6cb1
https://github.com/llvm/llvm-project/commit/3041fa6c7a3033040dce0933455be014760c6cb1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Analysis/SliceAnalysis.cpp
M mlir/lib/Analysis/TopologicalSortUtils.cpp
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Dialect/Async/Transforms/AsyncToAsyncRuntime.cpp
M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
M mlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp
M mlir/lib/Dialect/GPU/Utils/DistributionUtils.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
M mlir/lib/Dialect/Utils/StructuredOpsUtils.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/IR/Location.cpp
M mlir/lib/Rewrite/FrozenRewritePatternSet.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Transforms/Mem2Reg.cpp
M mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
M mlir/test/lib/Analysis/DataFlow/TestDenseDataFlowAnalysis.h
M mlir/test/lib/Analysis/DataFlow/TestSparseBackwardDataFlowAnalysis.cpp
M mlir/test/lib/Dialect/Linalg/TestLinalgElementwiseFusion.cpp
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
Log Message:
-----------
[mlir] Use *Set::insert_range (NFC) (#132326)
DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range. This patch replaces:
Dest.insert(Src.begin(), Src.end());
with:
Dest.insert_range(Src);
This patch does not touch custom begin like succ_begin for now.
Commit: 42a8813757dca4eed0ac462ed371f15b4ff004eb
https://github.com/llvm/llvm-project/commit/42a8813757dca4eed0ac462ed371f15b4ff004eb
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
Log Message:
-----------
[RISCV] Rename VariantKind to Specifier
Follow the X86 and Mips renaming.
> "Relocation modifier" suggests adjustments happen during the linker's relocation step rather than the assembler's expression evaluation.
> "Relocation specifier" is clear, aligns with Arm and IBM AIX's documentation, and fits the assembler's role seamlessly.
In addition, rename *MCExpr::getKind, which confusingly shadows the base class getKind.
Commit: c9055e9780683735392ac0e74163020015eabf15
https://github.com/llvm/llvm-project/commit/c9055e9780683735392ac0e74163020015eabf15
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
Log Message:
-----------
[RISCV] Remove Specifier::VK_Invalid
Commit: 75c6fd3c8324d82daf713bcd1c6031dae64759f6
https://github.com/llvm/llvm-project/commit/75c6fd3c8324d82daf713bcd1c6031dae64759f6
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcMCInstLower.cpp
M llvm/lib/Target/Sparc/SparcTargetObjectFile.cpp
Log Message:
-----------
[Sparc] Rename VariantKind to Specifier
Follow the X86, Mips, and RISCV renaming.
> "Relocation modifier" suggests adjustments happen during the linker's relocation step rather than the assembler's expression evaluation.
> "Relocation specifier" is clear, aligns with Arm and IBM AIX's documentation, and fits the assembler's role seamlessly.
In addition, rename *MCExpr::getKind, which confusingly shadows the base class getKind.
Commit: f5f6af8e7c0168327015717fc0b452f6152319af
https://github.com/llvm/llvm-project/commit/f5f6af8e7c0168327015717fc0b452f6152319af
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64CondBrTuning.cpp
A llvm/test/CodeGen/AArch64/cond-br-tuning-instr-ref.mir
Log Message:
-----------
[InstrRef] Preserve debug instr num in aarch64-cond-br-tuning. (#132081)
The aarch64-cond-br-tuning pass transforms a CBZX instruction into a
conditional branch (B.cond). One of the by products of the
transformation is that the source instruction of the CBZX, which is an
ANDXri instruction, gets transformed into a ANDSXri instruction, however
this transformation doesn't preserve it's debug instruction number.
This patch fixes that issue.
Commit: 910f7f45f27d1f3cfad779669d0e0f15ff5b9686
https://github.com/llvm/llvm-project/commit/910f7f45f27d1f3cfad779669d0e0f15ff5b9686
Author: Brad Smith <brad at comstyle.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/Haiku.h
Log Message:
-----------
[Driver] Haiku address sanitizer support (#132335)
Co-authored-by: Jérôme Duval <jerome.duval at gmail.com>
Commit: 111cc472d1297386bc3220659d3faec2c29795cf
https://github.com/llvm/llvm-project/commit/111cc472d1297386bc3220659d3faec2c29795cf
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRELFObjectWriter.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCELFStreamer.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCELFStreamer.h
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.h
Log Message:
-----------
[AVR] Rename VariantKind to Specifier
Follow the X86, Mips, and RISCV renaming.
> "Relocation modifier" suggests adjustments happen during the linker's relocation step rather than the assembler's expression evaluation.
> "Relocation specifier" is clear, aligns with Arm and IBM AIX's documentation, and fits the assembler's role seamlessly.
In addition, rename *MCExpr::getKind, which confusingly shadows the base class getKind.
Commit: ad0827d364293a42540885ae41b78995e2818581
https://github.com/llvm/llvm-project/commit/ad0827d364293a42540885ae41b78995e2818581
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/test/Transforms/GVN/assume.ll
M llvm/test/Transforms/GVN/basic.ll
M llvm/test/Transforms/GVN/nonescaping.ll
M llvm/test/Transforms/GVN/pr14166.ll
Log Message:
-----------
[GVN] Add MemorySSA checks in tests 1/N (#130261)
Add MemorySSA checks in some GVN tests. This is first patch of the series and many more might come based on tests pass/fail.
Commit: 1667a2afd86ffbfc376cb2550205abf0f1a4f064
https://github.com/llvm/llvm-project/commit/1667a2afd86ffbfc376cb2550205abf0f1a4f064
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
M clang/test/SemaCXX/constexpr-builtin-bit-cast.cpp
Log Message:
-----------
[clang][ExprConst] Check record base classes for valid structs (#132270)
In error cases, the base might be None.
Fixes https://github.com/llvm/llvm-project/issues/132257
Commit: 2089b081ff2b8acb50bc0b9da7a3cf44387d797e
https://github.com/llvm/llvm-project/commit/2089b081ff2b8acb50bc0b9da7a3cf44387d797e
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCExpr.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCExpr.h
Log Message:
-----------
[ARM] Rename VariantKind to Specifier
Follow the X86, Mips, and RISCV renaming.
> "Relocation modifier" suggests adjustments happen during the linker's relocation step rather than the assembler's expression evaluation.
> "Relocation specifier" is clear, aligns with Arm and IBM AIX's documentation, and fits the assembler's role seamlessly.
In addition, rename *MCExpr::getKind, which confusingly shadows the base class getKind.
Commit: 103119a435c9cd1c73da92758a503abee1bac3da
https://github.com/llvm/llvm-project/commit/103119a435c9cd1c73da92758a503abee1bac3da
Author: Sam Parker <sam.parker at arm.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
A llvm/test/CodeGen/WebAssembly/wide-simd-mul.ll
Log Message:
-----------
[WebAssembly] Lower wide SIMD i8 muls (#130785)
Currently, 'wide' i32 simd multiplication, with extended i8 elements,
will perform the multiplication with i32 So, for IR like the following:
```
%wide.a = sext <8 x i8> %a to <8 x i32>
%wide.b = sext <8 x i8> %a to <8 x i32>
%mul = mul <8 x i32> %wide.a, %wide.b
ret <8 x i32> %mul
```
We would generate the following sequence:
```
i16x8.extend_low_i8x16_s $push6=, $1
local.tee $push5=, $3=, $pop6
i32x4.extmul_low_i16x8_s $push0=, $pop5, $3
v128.store 0($0), $pop0
i8x16.shuffle $push1=, $1, $1, 4, 5, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
i16x8.extend_low_i8x16_s $push4=, $pop1
local.tee $push3=, $1=, $pop4
i32x4.extmul_low_i16x8_s $push2=, $pop3, $1
v128.store 16($0), $pop2
return
```
But now we perform the multiplication with i16, resulting in:
```
i16x8.extmul_low_i8x16_s $push3=, $1, $1
local.tee $push2=, $1=, $pop3
i32x4.extend_high_i16x8_s $push0=, $pop2
v128.store 16($0), $pop0
i32x4.extend_low_i16x8_s $push1=, $1
v128.store 0($0), $pop1
return
```
Commit: 058a4e8170f2c66764b78c88e574d5c364c6bd93
https://github.com/llvm/llvm-project/commit/058a4e8170f2c66764b78c88e574d5c364c6bd93
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-20 (Thu, 20 Mar 2025)
Changed paths:
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/LoongArchMCInstLower.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.h
Log Message:
-----------
[LoongArch] Rename VariantKind to Specifier
Follow the X86, Mips, and RISCV renaming.
> "Relocation modifier" suggests adjustments happen during the linker's relocation step rather than the assembler's expression evaluation.
> "Relocation specifier" is clear, aligns with Arm and IBM AIX's documentation, and fits the assembler's role seamlessly.
In addition, rename *MCExpr::getKind, which confusingly shadows the base class getKind.
The parseSpecifier name follows Sparc.
Commit: be258a2c2de0417716800fd07ef91572fbf20fce
https://github.com/llvm/llvm-project/commit/be258a2c2de0417716800fd07ef91572fbf20fce
Author: Valery Pykhtin <valery.pykhtin at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/SSAUpdaterBulk.h
M llvm/lib/Transforms/Utils/SSAUpdaterBulk.cpp
M llvm/unittests/Transforms/Utils/SSAUpdaterBulkTest.cpp
Log Message:
-----------
[SSAUpdaterBulk] Fix incorrect live-in values for a block. (#131762)
The previous implementation incorrectly calculated incoming values from
loop backedges, as demonstrated by the tests. The issue was that it did
not distinguish between live-in and live-out values for blocks. This
patch addresses the problem and fixes
https://github.com/llvm/llvm-project/pull/131761.
To avoid bloating storage in `R.Defines`, processing data has been moved
to a temporary map `BBInfos`. This change helps manage heap allocation
more efficiently and likely improves caching.
Commit: 17b202fc17f2b4b1df3e8fc842226597a0ed364e
https://github.com/llvm/llvm-project/commit/17b202fc17f2b4b1df3e8fc842226597a0ed364e
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
A llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll
Log Message:
-----------
[LoopInterchange] Add an option to prioritize vectorization (#131988)
The LoopInterchange cost-model consists of several decision rules. They
are called one by one, and if some rule can determine the profitability,
then the subsequent rules aren't called. In the current implementation,
the rule for `CacheCostAnalysis` is called first, and if it fails to
determine the profitability, then the rule for vectorization is called.
However, there are cases where interchanging loops for vectorization
makes the code faster even if such exchanges are detrimental to the
cache. For example, exchanging the inner two loops in the following
example looks about x3 faster in my local (compiled with `-O3
-mcpu=neoverse-v2 -mllvm -cache-line-size=64`), even though it's
rejected by the rule based on cache cost. (NOTE: LoopInterchange cannot
exchange these loops due to legality checks. This should also be
improved.)
```c
__attribute__((aligned(64))) float aa[256][256],bb[256][256],cc[256][256],
dd[256][256],ee[256][256],ff[256][256];
// Alternative of TSVC s231 with more array accesses than the original.
void s231_alternative() {
for (int nl = 0; nl < 100*(100000/256); nl++) {
for (int i = 0; i < 256; ++i) {
for (int j = 1; j < 256; j++) {
aa[j][i] = aa[j-1][i] + bb[j][i] + cc[i][j]
+ dd[i][j] + ee[i][j] + ff[i][j];
}
}
}
}
```
This patch introduces a new option to prioritize the vectorization rule
over the cache cost rule.
Related issue: #131130
---------
Co-authored-by: Florian Hahn <flo at fhahn.com>
Commit: d6dc74e19f5cdb6995b13329480e330aff113f96
https://github.com/llvm/llvm-project/commit/d6dc74e19f5cdb6995b13329480e330aff113f96
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
M llvm/test/CodeGen/LoongArch/fix-tle-le-sym-type.ll
Log Message:
-----------
[LoongArch] Fix the type of tls-le symbols (#132324)
Commit: 29e1a7673c969e702f0b86527d811e7160cfe4ef
https://github.com/llvm/llvm-project/commit/29e1a7673c969e702f0b86527d811e7160cfe4ef
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/tools/llvm-exegesis/lib/Assembler.cpp
Log Message:
-----------
[llvm-exegesis] Avoid repeated hash lookups (NFC) (#132331)
Commit: 03557169e0ad0fe6bdfc680473c5ebdeb63d9ddb
https://github.com/llvm/llvm-project/commit/03557169e0ad0fe6bdfc680473c5ebdeb63d9ddb
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
R bolt/include/bolt/Passes/NonPacProtectedRetAnalysis.h
A bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/lib/Passes/CMakeLists.txt
R bolt/lib/Passes/NonPacProtectedRetAnalysis.cpp
A bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
M bolt/test/binary-analysis/AArch64/gs-pacret-multi-bb.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
Log Message:
-----------
[BOLT] Gadget scanner: streamline issue reporting (#131896)
In preparation for adding more gadget kinds to detect, streamline
issue reporting.
Rename classes representing issue reports. In particular, rename
`Annotation` base class to `Report`, as it has nothing to do with
"annotations" in `MCPlus` terms anymore. Remove references to "return
instructions" from variable names and report messages, use generic
terms instead. Rename NonPacProtectedRetAnalysis to PAuthGadgetScanner.
Remove `GeneralDiagnostic` as a separate class, make `GenericReport`
(former `GenDiag`) store `std::string Text` directly. Remove unused
`operator=` and `operator==` methods, as `Report`s are created on the
heap and referenced via `shared_ptr`s.
Introduce `GadgetKind` class - currently, it only wraps a `const char *`
description to display to the user. This description is intended to be
a per-gadget-kind constant (or a few hard-coded constants), so no need
to store it to `std::string` field in each report instance. To handle
both free-form `GenericReport`s and statically-allocated messages
without unnecessary overhead, move printing of the report header to the
base class (and take the message argument as a `StringRef`).
Commit: 6da8f5661961416c704061a9d401ea6ae480cbc1
https://github.com/llvm/llvm-project/commit/6da8f5661961416c704061a9d401ea6ae480cbc1
Author: CHANDRA GHALE <chandra.nitdgp at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/Basic/OpenMPKinds.def
M clang/include/clang/Basic/OpenMPKinds.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/OpenMP/for_reduction_messages.cpp
M clang/test/OpenMP/for_simd_reduction_messages.cpp
M clang/test/OpenMP/parallel_for_reduction_messages.cpp
M clang/test/OpenMP/sections_reduction_messages.cpp
Log Message:
-----------
[OpenMP 6.0] Parse/Sema support for reduction over private variable with reduction clause. (#129938)
Initial Parse/Sema support for reduction over private variable with
reduction clause.
Section 7.6.10 in in OpenMP 6.0 spec.
- list item in a reduction clause can now be private in the enclosing
context.
- Added support for _original-sharing-modifier_ with reduction clause.
---------
Co-authored-by: Chandra Ghale <ghale at pe31.hpc.amslabs.hpecorp.net>
Commit: f4ec179bf5295f92aa0346392a58fad54f9b458e
https://github.com/llvm/llvm-project/commit/f4ec179bf5295f92aa0346392a58fad54f9b458e
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/Support/MathExtras.h
M llvm/lib/Target/ARM/ARMISelLowering.cpp
Log Message:
-----------
[ARM] Fix undefined behavior in `isLegalAddImmediate` (#132219)
Building clang under UBsan, it reported an integer overflow in this
function when the input value was -2^63, because it's UB to pass the
maximum negative value of an integer type to `std::abs`.
Fixed by adding a new absolute-value function in `MathExtras.h` whose
return type is the unsigned version of the argument type, and using that
instead.
(This seems like the kind of thing C++ should have already had, but
apparently it doesn't, and I couldn't find an existing one in LLVM
Support either.)
Commit: 2170d77e5dfd0a096ab16ecb3c3d82b86dc83a45
https://github.com/llvm/llvm-project/commit/2170d77e5dfd0a096ab16ecb3c3d82b86dc83a45
Author: Uday Bondhugula <uday at polymagelabs.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Affine/Analysis/AffineAnalysis.cpp
M mlir/test/Dialect/Affine/scalrep.mlir
Log Message:
-----------
[MLIR][Affine] Fix getAccessRelation for 0-d memrefs (#132347)
Fix getAccessRelation for 0-d memref accesses in certain cases. Fixes
corner case crashes when using scalrep, affine dep analysis, etc.
Fixes: https://github.com/llvm/llvm-project/issues/132163
Commit: f89a7fa319ccd903a9db69a9e32e1e63d866c5f8
https://github.com/llvm/llvm-project/commit/f89a7fa319ccd903a9db69a9e32e1e63d866c5f8
Author: Robert O'Callahan <rocallahan at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/lldbreverse.py
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueWatchpoints.py
Log Message:
-----------
[lldb] Ignore registers that the debugserver fails to read (#132122)
On Mac x86-64, the debugserver reports a register ('ds' at least) but
returns an error when we try to read it. Just skip storing such
registers in snapshots so we won't try to restore them.
Commit: cd6b7448d5fd18cfc69efaa03c082eed51d53009
https://github.com/llvm/llvm-project/commit/cd6b7448d5fd18cfc69efaa03c082eed51d53009
Author: Josep Pinot <josep.pinot at bsc.es>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M openmp/runtime/src/kmp.h
M openmp/runtime/src/kmp_global.cpp
M openmp/runtime/src/kmp_tasking.cpp
R openmp/runtime/test/tasking/omp_record_replay_random_id.cpp
R openmp/runtime/test/tasking/omp_record_replay_reset.cpp
Log Message:
-----------
Revert "Update OpenMP runtime to adopt taskgraph clause from 6.0 Specs" (#131571)
Commit: 77edfbb96cf5978bd2719978a34dfb4cf62d37c9
https://github.com/llvm/llvm-project/commit/77edfbb96cf5978bd2719978a34dfb4cf62d37c9
Author: Nathan Gauër <brioche at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M .ci/metrics/metrics.py
Log Message:
-----------
[CI] Don't count canceled buildkite builds (#132015)
We don't count canceled jobs on GCP, so we shouldn't count canceled jobs
on Buildkite neither.
Signed-off-by: Nathan Gauër <brioche at google.com>
Commit: 7f8451c868cdc91481f9629517db3f53349514b7
https://github.com/llvm/llvm-project/commit/7f8451c868cdc91481f9629517db3f53349514b7
Author: Kito Cheng <kito.cheng at sifive.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/test/CodeGen/RISCV/rvv/allocate-lmul-2-4-8.ll
M llvm/test/CodeGen/RISCV/rvv/rv32-spill-vector-csr.ll
M llvm/test/CodeGen/RISCV/rvv/rv32-spill-vector.ll
M llvm/test/CodeGen/RISCV/rvv/rv32-spill-zvlsseg.ll
M llvm/test/CodeGen/RISCV/rvv/rv64-spill-vector-csr.ll
M llvm/test/CodeGen/RISCV/rvv/rv64-spill-vector.ll
M llvm/test/CodeGen/RISCV/rvv/rv64-spill-zvlsseg.ll
Log Message:
-----------
[RISCV] Use vsetvli instead of vlenb in Prologue/Epilogue (#113756)
Currently, we use `csrr` with `vlenb` to obtain the `VLEN`, but this is
not the only option. We can also use `vsetvli` with `e8`/`m1` to get
`VLENMAX`, which is equal to the VLEN. This method is preferable on some
microarchitectures and makes it easier to obtain values like `VLEN * 2`,
`VLEN * 4`, or `VLEN * 8`, reducing the number of instructions needed to
calculate VLEN multiples.
However, this approach is *NOT* always interchangeable, as it changes
the state of `VTYPE` and `VL`, which can alter the behavior of vector
instructions, potentially causing incorrect code generation if applied
after a vsetvli insertion. Therefore, we limit its use to the
prologue/epilogue for now, as there are no vector operations within the
prologue/epilogue sequence.
With further analysis, we may extend this approach beyond the
prologue/epilogue in the future, but starting here should be a good
first step.
This feature is gurded by the `+prefer-vsetvli-over-read-vlenb` feature,
which is disabled by default for now.
Commit: 690b8b4e942e28988fc35bfd13ddc69db20b8de9
https://github.com/llvm/llvm-project/commit/690b8b4e942e28988fc35bfd13ddc69db20b8de9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M lld/COFF/Writer.cpp
Log Message:
-----------
[lld] Avoid repeated map lookups (NFC) (#132327)
Commit: 4e69258bf390b51ed5bc65e7cea4cbcfbb62bd44
https://github.com/llvm/llvm-project/commit/4e69258bf390b51ed5bc65e7cea4cbcfbb62bd44
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
A llvm/test/Transforms/LoopVectorize/AArch64/masked-call-scalarize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-cost.ll
A llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-uniform-store.ll
Log Message:
-----------
[LoopVectorize] Add cost of generating tail-folding mask to the loop (#130565)
At the moment if we decide to enable tail-folding we do not include
the cost of generating the mask per VF. This can mean we make some
poor choices of VF, which is definitely true for SVE-enabled AArch64
targets where mask generation for fixed-width vectors is more
expensive than for scalable vectors.
I've added a VPInstruction::computeCost function to return the costs
of the ActiveLaneMask and ExplicitVectorLength operations.
Unfortunately, in order to prevent asserts firing I've also had to
duplicate the same code in the legacy cost model to make sure the
chosen VFs match up. I've wrapped this up in a ifndef NDEBUG for
now. The alternative would be to disable the assert completely when
tail-folding, which I imagine is just as bad.
New tests added:
Transforms/LoopVectorize/AArch64/sve-tail-folding-cost.ll
Transforms/LoopVectorize/RISCV/tail-folding-cost.ll
Commit: 2e3fa4ba9e0b65cf59f7b67a8bdf2377611cd067
https://github.com/llvm/llvm-project/commit/2e3fa4ba9e0b65cf59f7b67a8bdf2377611cd067
Author: Stephen Thomas <104134586+stepthomas at users.noreply.github.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/MCA/AMDGPUCustomBehaviour.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
A llvm/test/CodeGen/AMDGPU/force-wait-after-always-gds.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.add.gs.reg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.sub.gs.reg.rtn.ll
Log Message:
-----------
[AMDGPU] Insert before and after instructions that always use GDS (#131338)
It is an architectural requirement that there must be no outstanding GDS
instructions when an "always GDS" instruction is issued, and also that
an always GDS instruction must be allowed to complete.
Insert waits on DScnt/LGKMcnt prior to (if necessary) and subsequent to
(unconditionally) any always GDS instruction, and an additional S_NOP if
the subsequent wait was followed by S_ENDPGM.
Always GDS instructions are GWS instructions, DS_ORDERED_COUNT,
DS_ADD_GS_REG_RTN, and DS_SUB_GS_REG_RTN (the latter two as considered
always GDS as of this patch).
Commit: 5488ad8f25cf6052ad5d03a911c68dd9d5c6460f
https://github.com/llvm/llvm-project/commit/5488ad8f25cf6052ad5d03a911c68dd9d5c6460f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
Log Message:
-----------
[X86] combineConcatVectorOps - add concatenation handling for X86ISD::VPERMILPV nodes (#132355)
Concat the nodes if we can merge either of the operands for free.
Commit: 387f3e8f986d53067a68aa0d7b058a0ce81ec941
https://github.com/llvm/llvm-project/commit/387f3e8f986d53067a68aa0d7b058a0ce81ec941
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M lldb/include/lldb/Symbol/UnwindPlan.h
M lldb/source/Plugins/ObjectFile/PECOFF/PECallFrameInfo.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp
M lldb/source/Symbol/CompactUnwindInfo.cpp
M lldb/source/Symbol/DWARFCallFrameInfo.cpp
M lldb/source/Symbol/UnwindPlan.cpp
M lldb/unittests/Symbol/CMakeLists.txt
A lldb/unittests/Symbol/UnwindPlanTest.cpp
M lldb/unittests/UnwindAssembly/x86/Testx86AssemblyInspectionEngine.cpp
Log Message:
-----------
[lldb] s/ValidRange/ValidRanges in UnwindPlan (#127661)
To be able to describe discontinuous functions, this patch changes the
UnwindPlan to accept more than one address range.
I've also squeezed in a couple improvements/modernizations, for example
using the lower_bound function instead of a linear scan.
Commit: 44261dae5b3cd330cfcbd7ada51a8ed532103e98
https://github.com/llvm/llvm-project/commit/44261dae5b3cd330cfcbd7ada51a8ed532103e98
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/test/HLFIR/all-lowering.fir
M flang/test/HLFIR/any-lowering.fir
M flang/test/HLFIR/associate-codegen.fir
M flang/test/HLFIR/assumed-type-actual-args.f90
M flang/test/HLFIR/boxchar_emboxing.f90
M flang/test/HLFIR/count-lowering.fir
M flang/test/HLFIR/cshift-lowering.fir
M flang/test/HLFIR/dot_product-lowering.fir
M flang/test/HLFIR/elemental-codegen-nested.fir
M flang/test/HLFIR/maxloc-lowering.fir
M flang/test/HLFIR/maxval-lowering.fir
M flang/test/HLFIR/minloc-lowering.fir
M flang/test/HLFIR/minval-lowering.fir
M flang/test/HLFIR/mul_transpose.f90
M flang/test/HLFIR/opt-bufferization-eval_in_mem.fir
M flang/test/HLFIR/order_assignments/user-defined-assignment.fir
M flang/test/HLFIR/product-lowering.fir
M flang/test/HLFIR/reshape-lowering.fir
M flang/test/HLFIR/sum-lowering.fir
M flang/test/HLFIR/transpose-lowering.fir
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/CUDA/cuda-data-attribute.cuf
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
M flang/test/Lower/CUDA/cuda-device-proc.cuf
M flang/test/Lower/CUDA/cuda-kernel-calls.cuf
M flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf
M flang/test/Lower/CUDA/cuda-return01.cuf
M flang/test/Lower/CUDA/cuda-return02.cuf
M flang/test/Lower/HLFIR/actual_target_for_dummy_pointer.f90
M flang/test/Lower/HLFIR/allocatable-and-pointer-status-change.f90
M flang/test/Lower/HLFIR/allocatable-end-of-scope-dealloc.f90
M flang/test/Lower/HLFIR/allocatable-return.f90
M flang/test/Lower/HLFIR/allocatables-and-pointers.f90
M flang/test/Lower/HLFIR/array-ctor-as-elemental.f90
M flang/test/Lower/HLFIR/array-ctor-derived.f90
M flang/test/Lower/HLFIR/array-ctor-index.f90
M flang/test/Lower/HLFIR/associate-construct.f90
M flang/test/Lower/HLFIR/assumed-rank-iface.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries-2.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries.f90
M flang/test/Lower/HLFIR/bindc-entry-stmt.f90
M flang/test/Lower/HLFIR/bindc-value-derived.f90
M flang/test/Lower/HLFIR/call-issue-124043.f90
M flang/test/Lower/HLFIR/call-sequence-associated-descriptors.f90
M flang/test/Lower/HLFIR/calls-array-results.f90
M flang/test/Lower/HLFIR/calls-assumed-shape.f90
M flang/test/Lower/HLFIR/calls-constant-expr-arg.f90
M flang/test/Lower/HLFIR/calls-f77.f90
M flang/test/Lower/HLFIR/calls-optional.f90
M flang/test/Lower/HLFIR/calls-percent-val-ref.f90
M flang/test/Lower/HLFIR/cray-pointers.f90
M flang/test/Lower/HLFIR/custom-intrinsic.f90
M flang/test/Lower/HLFIR/elemental-array-ops.f90
M flang/test/Lower/HLFIR/elemental-call-vector-subscripts.f90
M flang/test/Lower/HLFIR/elemental-user-procedure-ref.f90
M flang/test/Lower/HLFIR/entry_return.f90
M flang/test/Lower/HLFIR/expr-addr.f90
M flang/test/Lower/HLFIR/expr-as-inquired.f90
M flang/test/Lower/HLFIR/function-return-as-expr.f90
M flang/test/Lower/HLFIR/function-return.f90
M flang/test/Lower/HLFIR/goto-do-body.f90
M flang/test/Lower/HLFIR/ignore-rank-unlimited-polymorphic.f90
M flang/test/Lower/HLFIR/implicit-call-mismatch.f90
M flang/test/Lower/HLFIR/intentout-allocatable-components.f90
M flang/test/Lower/HLFIR/internal-procedures.f90
M flang/test/Lower/HLFIR/intrinsic-dynamically-optional.f90
M flang/test/Lower/HLFIR/intrinsic-module-procedures.f90
M flang/test/Lower/HLFIR/intrinsic-subroutines.f90
M flang/test/Lower/HLFIR/issue80884.f90
M flang/test/Lower/HLFIR/maxloc.f90
M flang/test/Lower/HLFIR/maxval.f90
M flang/test/Lower/HLFIR/minloc.f90
M flang/test/Lower/HLFIR/minval.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-nopass.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-pass.f90
M flang/test/Lower/HLFIR/procedure-designators.f90
M flang/test/Lower/HLFIR/procedure-pointer.f90
M flang/test/Lower/HLFIR/product.f90
M flang/test/Lower/HLFIR/reshape.f90
M flang/test/Lower/HLFIR/select-rank.f90
M flang/test/Lower/HLFIR/select-type-selector.f90
M flang/test/Lower/HLFIR/structure-constructor.f90
M flang/test/Lower/HLFIR/sum.f90
M flang/test/Lower/HLFIR/transformational.f90
M flang/test/Lower/HLFIR/user-defined-assignment.f90
M flang/test/Lower/HLFIR/vector-subscript-as-value.f90
M flang/test/Lower/Intrinsics/associated-proc-pointers.f90
M flang/test/Lower/Intrinsics/c_f_procpointer.f90
M flang/test/Lower/Intrinsics/c_ptr_eq_ne.f90
M flang/test/Lower/Intrinsics/chdir.f90
M flang/test/Lower/Intrinsics/ieee_rint_int.f90
M flang/test/Lower/Intrinsics/ieee_rounding.f90
M flang/test/Lower/Intrinsics/loc.f90
M flang/test/Lower/Intrinsics/min.f90
M flang/test/Lower/Intrinsics/reduce.f90
M flang/test/Lower/Intrinsics/rename.f90
M flang/test/Lower/Intrinsics/second.f90
M flang/test/Lower/Intrinsics/selected_logical_kind.f90
M flang/test/Lower/Intrinsics/shape.f90
M flang/test/Lower/Intrinsics/signal.f90
M flang/test/Lower/Intrinsics/system-optional.f90
M flang/test/Lower/Intrinsics/system.f90
M flang/test/Lower/OpenACC/acc-atomic-capture.f90
M flang/test/Lower/OpenACC/acc-atomic-read.f90
M flang/test/Lower/OpenACC/acc-atomic-update-array.f90
M flang/test/Lower/OpenACC/acc-atomic-update-hlfir.f90
M flang/test/Lower/OpenACC/acc-atomic-update.f90
M flang/test/Lower/OpenACC/acc-atomic-write.f90
M flang/test/Lower/OpenACC/acc-data-operands-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-data-operands.f90
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/OpenACC/acc-enter-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-enter-data.f90
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-kernels.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-parallel.f90
M flang/test/Lower/OpenACC/acc-private-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-private.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
M flang/test/Lower/OpenACC/acc-serial.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/distribute-standalone-private.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/wsloop.f90
M flang/test/Lower/OpenMP/allocatable-array-bounds.f90
M flang/test/Lower/OpenMP/common-atomic-lowering.f90
M flang/test/Lower/OpenMP/copyin-order.f90
M flang/test/Lower/OpenMP/copyin.f90
M flang/test/Lower/OpenMP/default-clause.f90
M flang/test/Lower/OpenMP/flush.f90
M flang/test/Lower/OpenMP/generic-loop-rewriting.f90
M flang/test/Lower/OpenMP/hlfir-seqloop-parallel.f90
M flang/test/Lower/OpenMP/lastprivate-allocatable.f90
M flang/test/Lower/OpenMP/lastprivate-iv.f90
M flang/test/Lower/OpenMP/lastprivate-simd.f90
M flang/test/Lower/OpenMP/loop-pointer-variable.f90
M flang/test/Lower/OpenMP/parallel-lastprivate-clause-scalar.f90
M flang/test/Lower/OpenMP/parallel-private-clause-fixes.f90
M flang/test/Lower/OpenMP/parallel-private-clause.f90
M flang/test/Lower/OpenMP/parallel-reduction-allocatable-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-pointer-array.f90
M flang/test/Lower/OpenMP/parallel-reduction3.f90
M flang/test/Lower/OpenMP/parallel-wsloop-firstpriv.f90
M flang/test/Lower/OpenMP/parallel-wsloop-lastpriv.f90
M flang/test/Lower/OpenMP/parallel-wsloop.f90
M flang/test/Lower/OpenMP/private-commonblock.f90
M flang/test/Lower/OpenMP/private-derived-type.f90
M flang/test/Lower/OpenMP/scan.f90
M flang/test/Lower/OpenMP/shared-loop.f90
M flang/test/Lower/OpenMP/simd.f90
M flang/test/Lower/OpenMP/simd_x86_64.f90
M flang/test/Lower/OpenMP/stop-stmt-in-region.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/OpenMP/threadprivate-char-array-chararray.f90
M flang/test/Lower/OpenMP/threadprivate-commonblock.f90
M flang/test/Lower/OpenMP/threadprivate-hlfir.f90
M flang/test/Lower/OpenMP/threadprivate-host-association.f90
M flang/test/Lower/OpenMP/threadprivate-integer-different-kinds.f90
M flang/test/Lower/OpenMP/threadprivate-pointer-allocatable.f90
M flang/test/Lower/OpenMP/threadprivate-real-logical-complex-derivedtype.f90
M flang/test/Lower/OpenMP/threadprivate-use-association-2-hlfir.f90
M flang/test/Lower/OpenMP/threadprivate-use-association.f90
M flang/test/Lower/OpenMP/unstructured.f90
M flang/test/Lower/OpenMP/wsloop-chunks.f90
M flang/test/Lower/OpenMP/wsloop-collapse.f90
M flang/test/Lower/OpenMP/wsloop-monotonic.f90
M flang/test/Lower/OpenMP/wsloop-nonmonotonic.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add.f90
M flang/test/Lower/OpenMP/wsloop-reduction-allocatable-array-minmax.f90
M flang/test/Lower/OpenMP/wsloop-reduction-allocatable.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array-assumed-shape.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ieor-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ieor.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul.f90
M flang/test/Lower/OpenMP/wsloop-reduction-multiple-clauses.f90
M flang/test/Lower/OpenMP/wsloop-reduction-pointer.f90
M flang/test/Lower/OpenMP/wsloop-schedule.f90
M flang/test/Lower/OpenMP/wsloop-variable.f90
M flang/test/Lower/OpenMP/wsloop.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocate-source-allocatables-2.f90
M flang/test/Lower/array-character.f90
M flang/test/Lower/array-elemental-calls-char-byval.f90
M flang/test/Lower/array-elemental-calls-char.f90
M flang/test/Lower/call-by-value-attr.f90
M flang/test/Lower/components.f90
M flang/test/Lower/derived-type-temp.f90
M flang/test/Lower/entry-statement.f90
M flang/test/Lower/intentout-deallocate.f90
M flang/test/Lower/io-asynchronous.f90
M flang/test/Lower/nullify-polymorphic.f90
M flang/test/Lower/structure-constructors-alloc-comp.f90
Log Message:
-----------
[flang][NFC] use hlfir.declare first result when both results are raw pointers (#132261)
Currently, the helpers to get fir::ExtendedValue out of hlfir::Entity
use hlfir.declare second result (`#1`) in most cases. This is because
this result is the same as the input and matches what FIR was getting
before lowering to HLFIR.
But this creates odd situations when both hlfir.declare are raw pointers
and either result ends-up being used in the IR depending on whether the
code was generated by a helper using fir::ExtendedValue, or via "pure
HLFIR" helpers using the first result.
This will typically prevent simple CSE and easy identification that two
operation (e.g load/store) are touching the exact same memory location
without using alias analysis or "manual detection" (looking for common
hlfir.declare defining op).
Hence, when hlfir.declare results are both raw pointers, use `#0` when
producing `fir::ExtendedValue`.
When `#0` is a fir.box, keep using `#1` because these are not the same.
The only code change is in HLFIRTools.cpp and is pretty small, but there
is a big test fallout of `#1` to `#0`.
Commit: 3bcab6f20ab73098f3c3e46db21bb1bccf11f782
https://github.com/llvm/llvm-project/commit/3bcab6f20ab73098f3c3e46db21bb1bccf11f782
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M flang/test/Semantics/OpenMP/depend01.f90
Log Message:
-----------
[flang][OpenMP][Semantics] improve semantic checks for array sections (#132230)
I'm not sure why strides were not allowed in array sections: the stride
is explicitly allowed by the standard from the first version where array
sections were introduced. The limitation is that the stride must not be
negative.
Here I have added the check for a negative stride and updated the test
for a zero length section to take account of the stride.
Commit: 4b419840c883b0de03ae72c7d352c37f24c1932c
https://github.com/llvm/llvm-project/commit/4b419840c883b0de03ae72c7d352c37f24c1932c
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M lldb/include/lldb/Interpreter/OptionValueFileSpecList.h
M lldb/include/lldb/Utility/FileSpec.h
M lldb/source/Interpreter/OptionValueFileSpecList.cpp
M lldb/source/Utility/FileSpec.cpp
M lldb/test/API/commands/settings/TestSettings.py
Log Message:
-----------
[lldb] Show target.debug-file-search-paths setting from python SBDebugger (#131683)
When printing setting variables using the python SBDebugger API if the type is of OptionValueFileSpec
it defaults to null as the value even if it has a value. This patch fixes that.
---------
Signed-off-by: Ebuka Ezike <yerimyah1 at gmail.com>
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: 52de49e4b9cd69957b7dc50a5fed061ecd0b0d77
https://github.com/llvm/llvm-project/commit/52de49e4b9cd69957b7dc50a5fed061ecd0b0d77
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M lldb/tools/debugserver/source/MacOSX/MachException.cpp
M lldb/tools/debugserver/source/MacOSX/MachException.h
Log Message:
-----------
[lldb][debugserver][MacOSX] Work around sanitizer misaligned address errors when reading exception data (#132193)
We've been dealing with UBSAN issues around this code for some time now
(see `9c36859b33b386fbfa9599646de1e2ae01158180` and
`1a2122e9e9d1d495fdf337a4a9445b61ca56df6f`). On recent macOS versions, a
UBSAN-enabled debugserver will crash when performing a `memcpy` of the
input `mach_exception_data_t`. The pointer to the beginning of the
exception data may not be aligned on a doubleword boundary, leading to
UBSAN failures such as:
```
$ ./bin/debugserver 0.0.0.0:5555 /Volumes/SSD/llvm-builds/llvm-worktrees/clang-work/build-sanitized-release/tools/lldb/test/Shell/Recognizer/Output/verbose_trap.test.tmp.out
/Volumes/SSD/llvm-builds/llvm-worktrees/clang-work/lldb/tools/debugserver/source/MacOSX/MachException.cpp:35:12: runtime error: store to misaligned address 0x00016ddfa634 for type 'mach_exception_data_type_t *' (aka 'long long *'), which requires 8 byte alignment
0x00016ddfa634: note: pointer points here
02 00 00 00 03 00 01 00 00 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00
^
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /Volumes/SSD/llvm-builds/llvm-worktrees/clang-work/lldb/tools/debugserver/source/MacOSX/MachException.cpp:35:12
```
Work around these failures by pretending the input data is a `char*`
buffer.
Drive-by changes:
* I factored out some duplicated code into a static
`AppendExceptionData` and made the types consistent
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: 123eb75cd43a5181c324efc033e978f0f1ed4598
https://github.com/llvm/llvm-project/commit/123eb75cd43a5181c324efc033e978f0f1ed4598
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M flang/lib/Lower/Bridge.cpp
Log Message:
-----------
[Flang] Do not emit numeric_storage_size into object file (#131463)
The value of numeric_storage_size depends on compilation options and
therefore its value is not yet known when building the builtins runtime.
Instead, the parameter is folding a __numeric_storage_size() expression
which is loaded into the user program. For the iso_fortran_env object
file, omit the symbol as it is never used.
Similar tests that ensure that __numeric_storage_size() is not folded
until compiling the actual user program exist in FortranEvalutate:
https://github.com/llvm/llvm-project/blob/1e6ba3cd2fe96be00b6ed6ba28b3d9f9271d784d/flang/lib/Evaluate/check-expression.cpp#L487-L492
https://github.com/llvm/llvm-project/blob/1e6ba3cd2fe96be00b6ed6ba28b3d9f9271d784d/flang/lib/Evaluate/fold-integer.cpp#L1457-L1460
Required for using CMake to compile the builtin module files. See RFC at
https://discourse.llvm.org/t/rfc-building-flangs-builtin-mod-files/84626
Commit: ff8a960ab1e3525ed23a9296a0ac89ff75d5bf08
https://github.com/llvm/llvm-project/commit/ff8a960ab1e3525ed23a9296a0ac89ff75d5bf08
Author: CHANDRA GHALE <chandra.nitdgp at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/lib/Serialization/ASTReader.cpp
Log Message:
-----------
Minor unused variable error for sanitizer builds (#132372)
Fix #132371
Minor error , sanitizer builds are failing for unused variable.
sanitizer-aarch64-linux/build/llvm-project/clang/lib/Serialization/ASTReader.cpp:11764:17:
error: unused variable 'I' [-Werror,-Wunused-variable]
11764 | for (unsigned I : llvm::seq<unsigned>(NumFlags))
This was modified as part of
[https://github.com/llvm/llvm-project/pull/129938](https://github.com/llvm/llvm-project/pull/129938)
, which got missed.
Co-authored-by: Chandra Ghale <ghale at pe31.hpc.amslabs.hpecorp.net>
Commit: 09feaa9261448e72ce21394613e0a12f84c1b8d9
https://github.com/llvm/llvm-project/commit/09feaa9261448e72ce21394613e0a12f84c1b8d9
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Headers/avx10_2niintrin.h
M clang/lib/Sema/SemaX86.cpp
M clang/test/CodeGen/X86/avx10_2ni-builtins.c
M llvm/include/llvm/IR/IntrinsicsX86.td
M llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
M llvm/lib/Target/X86/X86InstrAVX10.td
M llvm/lib/Target/X86/X86InstrAVX512.td
M llvm/lib/Target/X86/X86InstrFMA3Info.cpp
M llvm/lib/Target/X86/X86IntrinsicsInfo.h
M llvm/test/CodeGen/X86/avx10_2ni-intrinsics.ll
M llvm/test/MC/Disassembler/X86/avx10_2ni-32.txt
M llvm/test/MC/Disassembler/X86/avx10_2ni-64.txt
M llvm/test/MC/X86/avx10_2ni-32-intel.s
M llvm/test/MC/X86/avx10_2ni-64-att.s
Log Message:
-----------
Revert "[X86][AVX10.2] Support YMM rounding new instructions (#101825)" (#132362)
This reverts commit 0dba5381d8c8e4cadc32a067bf2fe5e3486ae53d.
YMM rounding was removed from AVX10 whitepaper. Ref:
https://cdrdv2.intel.com/v1/dl/getContent/784343
The MINMAX and SATURATING CONVERT instructions will be removed as a
follow up.
Commit: ea03bdee7081f25c652d581e274b10cb7c552357
https://github.com/llvm/llvm-project/commit/ea03bdee7081f25c652d581e274b10cb7c552357
Author: Zhuoran Yin <zhuoryin at amd.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.h
M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.td
M mlir/lib/Dialect/AMDGPU/Transforms/CMakeLists.txt
A mlir/lib/Dialect/AMDGPU/Transforms/TransferReadToLoad.cpp
A mlir/test/Dialect/AMDGPU/transfer-read-to-load.mlir
Log Message:
-----------
[MLIR][AMDGPU] Adding Vector transfer_read to load rewrite pattern (#131803)
This PR adds the Vector transfer_read to load rewrite pattern. The
pattern creates a transfer read op lowering. A vector trasfer read op
will be lowered to a combination of `vector.load`, `arith.select` and
`vector.broadcast` if:
- The transfer op is masked.
- The memref is in buffer address space.
- Other conditions introduced from `TransferReadToVectorLoadLowering`
The motivation of this PR is due to the lack of support of masked load
from amdgpu backend. `llvm.intr.masked.load` lower to a series of
conditional scalar loads refer to (`scalarize-masked-mem-intrin` pass).
This PR will make it possible for masked transfer_read to be lowered
towards buffer load with bounds check, allowing a more optimized global
load accessing pattern compared with existing implementation of
`llvm.intr.masked.load` on vectors.
Commit: 281028e37ca6c97c62ba68cd43eda2ff95bc70c4
https://github.com/llvm/llvm-project/commit/281028e37ca6c97c62ba68cd43eda2ff95bc70c4
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
A llvm/test/Transforms/LoopInterchange/profitability-redundant-interchange.ll
Log Message:
-----------
[LoopInterchange] Prevent from undoing its own transformation (#127473)
LoopInterchange uses the bubble-sort fashion algorithm to sort the loops
in a loop nest. For two loops `A` and `B`, it calls `isProfitable(A, B)`
to determine whether these loops should be exchanged. The result of
`isProfitable(A, B)` should be conservative, that is, it should return
true only when we are sure exchanging `A` and `B` will improve
performance. If it's not conservative enough, it's possible that a
subsequent `isProfitable(B, A)` will also return true, in which case
LoopInterchange will undo its previous transformation. To avoid such
cases, `isProfitable(B, A)` must not return true if `isProfitable(A, B)`
returned true in the past. However, the current implementation can be in
such a situation. This patch resolves it by correcting the handling of
two loops that have the same cache cost.
This resolve the problem mentioned in
https://github.com/llvm/llvm-project/pull/118267#issuecomment-2510759354.
Commit: 42d49a1a5b940c9a9a5da2488474be7adeb26095
https://github.com/llvm/llvm-project/commit/42d49a1a5b940c9a9a5da2488474be7adeb26095
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M flang/test/Lower/OpenMP/atomic-capture.f90
M flang/test/Lower/OpenMP/atomic-read.f90
M flang/test/Lower/OpenMP/atomic-update.f90
M flang/test/Lower/OpenMP/atomic-write.f90
M flang/test/Lower/OpenMP/critical.f90
M flang/test/Lower/OpenMP/loop-directive.f90
M flang/test/Lower/OpenMP/parallel.f90
M flang/test/Lower/OpenMP/sections.f90
M flang/test/Lower/OpenMP/single.f90
M flang/test/Lower/OpenMP/task.f90
M flang/test/Lower/OpenMP/threadprivate-default-clause.f90
Log Message:
-----------
[flang] fix openmp tests after #132261 (#132391)
I missed these tests in my test update after #132261 because they are
under `! REQUIRES: openmp_runtime`.
Broke build bots:
https://lab.llvm.org/buildbot/#/builders/50/builds/11789
Commit: 6b59b33358d250a6a1424de4a4379c52f7df2244
https://github.com/llvm/llvm-project/commit/6b59b33358d250a6a1424de4a4379c52f7df2244
Author: Vadim Curcă <80581374+VadimCurca at users.noreply.github.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M mlir/lib/Transforms/Utils/InliningUtils.cpp
M mlir/test/Transforms/inlining.mlir
Log Message:
-----------
[MLIR] Handle call site locations when inlining (#132247)
When inlining a `callee` with a call site debug location, the inlining
infrastructure was trivially combining the `callee` and the `caller`
locations, forming a "tree" of call stacks. Because of this, the remarks
were printing an incomplete inlining stack.
This commit handles this case and appends the `caller` location at the
end of the `callee`'s stack, extending the chain.
Commit: 369be311a7b8344699d12719a8fa557fe8934e46
https://github.com/llvm/llvm-project/commit/369be311a7b8344699d12719a8fa557fe8934e46
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/SimplifyCFG/X86/hoist-loads-stores-with-cf.ll
Log Message:
-----------
[X86,SimplifyCFG] Support conditional faulting load or store only (#132032)
This is to fix a bug when a target only support conditional faulting
load, see test case hoist_store_without_cstore.
Split `-simplifycfg-hoist-loads-stores-with-cond-faulting` into
`-simplifycfg-hoist-loads-with-cond-faulting` and
`-simplifycfg-hoist-stores-with-cond-faulting` to control conditional
faulting load and store respectively.
Commit: 561dcb26d4597b592caa417d36c1a4e09fb2be2d
https://github.com/llvm/llvm-project/commit/561dcb26d4597b592caa417d36c1a4e09fb2be2d
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/test/Driver/offload-Xarch.c
Log Message:
-----------
[Clang] Permit `-Xarch_` to be used with `--offload-arch` (#131884)
Summary:
The `--offload-arch` option is very complicated, but roughly behaves as
the `-march` option for several compilations at once. This creates
problems when we try to combine multiple separate architectures into
one, as happens with SYCL, OpenMP, and HIP w/ SPIR-V.
The existing solution used by OpenMP is the `-Xopenmp-target` option,
this lets you select which `--offload-arch` options go to which
toolchain. This patch permits `-Xarch_` to be used in the same way.
There are concerns about whether or not this falls into the `-Xarch_`
umbrella because it changes the driver behaviour, but I think this is
the
easiest way to handle this problem. The existing solution seems to be
prefixing things and adding more magic handling into `--offload-arch`.
Like SYCL is doing `nvidia_gpu_sm_89` instead of just `-Xarch_nvptx64
--offload-arch=sm_89`.
The only reason this is more complicated than just doing `-Xarch_sm_89
-march=...` is because we need to know to create multiple jobs for each
architecture.
Commit: e385ec90e2cbc6398cc6f445d995cf875bbc15b2
https://github.com/llvm/llvm-project/commit/e385ec90e2cbc6398cc6f445d995cf875bbc15b2
Author: Leonard Grey <lgrey at chromium.org>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M lld/MachO/Writer.cpp
M lld/test/MachO/sub-library.s
Log Message:
-----------
[lld-macho] Don't double emit reexported libraries (#132275)
When a library is specified with both `-l` and `-reexport_libraries`,
lld will emit two load commands for it, in contrast with ld64.
In an upcoming version of macOS, this fails dyld validation; see
https://crbug.com/404905688
---------
Co-authored-by: Mark Rowe <markrowe at chromium.org>>
Commit: af93db9344919085551fac38d6d6a4f774a7220a
https://github.com/llvm/llvm-project/commit/af93db9344919085551fac38d6d6a4f774a7220a
Author: Martin Storsjö <martin at martin.st>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M lld/COFF/MinGW.cpp
Log Message:
-----------
[LLD] [COFF] Add a few more mingw libs to skip autoexports for (#132289)
"libmsvcrt-os" was added to the list of excluded libs in binutils in
9d9c67b06c1bf4c4550e3de0eb575c2bfbe96df9 in 2017.
"libucrt" was added in c4a8df19ba0a82aa8dea88d9f72ed9e63cb1fa84 in 2022.
"libucrtapp" isn't in the binutils exclusion list yet, but a patch for
adding it has been submitted. Since
0d403d5dd13ce22c07418058f3b640708992890c in mingw-w64 (in 2020), there's
such a third variant of the UCRT import library available.
Since 18df3e8323dcf9fdfec56b5f12c04a9c723a0931 in 2025, "libpthread" and
"libwinpthread" are also excluded.
Commit: 610ade2ed7253593198287aa53a9b05852ef0ede
https://github.com/llvm/llvm-project/commit/610ade2ed7253593198287aa53a9b05852ef0ede
Author: bernhardu <bernhardu at mailbox.org>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M compiler-rt/lib/interception/interception_win.cpp
M compiler-rt/lib/interception/tests/interception_win_test.cpp
Log Message:
-----------
[win/asan] GetInstructionSize: Detect `66 90` two-byte NOP at 32-bit too. (#132267)
Observed in Wine when trying to intercept `ExitThread`, which forwards
to `ntdll.RtlExitUserThread`.
`gdb` interprets it as `xchg %ax,%ax`.
`llvm-mc` outputs simply `nop`.
```
==Asan-i386-calls-Dynamic-Test.exe==964==interception_win: unhandled instruction at 0x7be27cf0: 66 90 55 89 e5 56 50 8b
```
```
Wine-gdb> bt
#0 0x789a1766 in __interception::GetInstructionSize (address=<optimized out>, rel_offset=<optimized out>) at C:/llvm-mingw/llvm-mingw/llvm-project/compiler-rt/lib/interception/interception_win.cpp:983
#1 0x789ab480 in __sanitizer::SharedPrintfCode(bool, char const*, char*) () at C:/llvm-mingw/llvm-mingw/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_printf.cpp:311
#2 0x789a18e7 in __interception::OverrideFunctionWithHotPatch (old_func=2078440688, new_func=2023702608, orig_old_func=warning: (Internal error: pc 0x792f1a2c in read in CU, but not in symtab.)warning: (Error: pc 0x792f1a2c in address map, but not in symtab.)0x792f1a2c) at C:/llvm-mingw/llvm-mingw/llvm-project/compiler-rt/lib/interception/interception_win.cpp:1118
#3 0x789a1f34 in __interception::OverrideFunction (old_func=2078440688, new_func=2023702608, orig_old_func=warning: (Internal error: pc 0x792f1a2c in read in CU, but not in symtab.)warning: (Error: pc 0x792f1a2c in address map, but not in symtab.)0x792f1a2c) at C:/llvm-mingw/llvm-mingw/llvm-project/compiler-rt/lib/interception/interception_win.cpp:1224
#4 0x789a24ce in __interception::OverrideFunction (func_name=0x78a0bc43 <vtable for __asan::AsanThreadContext+1163> "ExitThread", new_func=2023702608, orig_old_func=warning: (Internal error: pc 0x792f1a2c in read in CU, but not in symtab.)warning: (Error: pc 0x792f1a2c in address map, but not in symtab.)0x792f1a2c) at C:/llvm-mingw/llvm-mingw/llvm-project/compiler-rt/lib/interception/interception_win.cpp:1369
#5 0x789f40ef in __asan::InitializePlatformInterceptors () at C:/llvm-mingw/llvm-mingw/llvm-project/compiler-rt/lib/asan/asan_win.cpp:190
#6 0x789e0c3c in __asan::InitializeAsanInterceptors () at C:/llvm-mingw/llvm-mingw/llvm-project/compiler-rt/lib/asan/asan_interceptors.cpp:802
#7 0x789ee6b5 in __asan::AsanInitInternal () at C:/llvm-mingw/llvm-mingw/llvm-project/compiler-rt/lib/asan/asan_rtl.cpp:442
#8 0x789eefb0 in __asan::AsanInitFromRtl () at C:/llvm-mingw/llvm-mingw/llvm-project/compiler-rt/lib/asan/asan_rtl.cpp:522
#9 __asan::AsanInitializer::AsanInitializer (this=<optimized out>) at C:/llvm-mingw/llvm-mingw/llvm-project/compiler-rt/lib/asan/asan_rtl.cpp:542
#10 __cxx_global_var_init () at C:/llvm-mingw/llvm-mingw/llvm-project/compiler-rt/lib/asan/asan_rtl.cpp:546
...
Wine-gdb> disassemble /r 2078440688,2078440688+20
Dump of assembler code from 0x7be27cf0 to 0x7be27d04:
0x7be27cf0 <_RtlExitUserThread at 4+0>: 66 90 xchg %ax,%ax
...
```
Commit: ac9049df7e62e2ca4dc5d103593b51639b5715e3
https://github.com/llvm/llvm-project/commit/ac9049df7e62e2ca4dc5d103593b51639b5715e3
Author: Henry Jiang <h243jian at uwaterloo.ca>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/LoopIdiomRecognize.h
M llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
A llvm/test/Transforms/LoopIdiom/strlen-not-emittable.ll
A llvm/test/Transforms/LoopIdiom/strlen.ll
A llvm/test/Transforms/LoopIdiom/wcslen16.ll
A llvm/test/Transforms/LoopIdiom/wcslen32.ll
Log Message:
-----------
Reland "[Transforms] LoopIdiomRecognize recognize strlen and wcslen (#108985)" (#131412)
Relands https://github.com/llvm/llvm-project/pull/108985
This PR continues the effort made in
https://discourse.llvm.org/t/rfc-strlen-loop-idiom-recognition-folding/55848
and https://reviews.llvm.org/D83392 and https://reviews.llvm.org/D88460
to extend `LoopIdiomRecognize` to find and replace loops of the form
```c
base = str;
while (*str)
++str;
```
and transforming the `strlen` loop idiom into the appropriate `strlen`
and `wcslen` library call which will give a small performance boost if
replaced.
```c
str = base + strlen(base)
len = str - base
```
Commit: 141656644959ea43b61868ef16e3d2782d40ea51
https://github.com/llvm/llvm-project/commit/141656644959ea43b61868ef16e3d2782d40ea51
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/Type.cpp
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaStmt.cpp
A clang/test/SemaCXX/ms-member-pointer.cpp
Log Message:
-----------
Reland: [clang] NFC: Clear some uses of MemberPointerType::getClass (#132317)
Relands Original PR: https://github.com/llvm/llvm-project/pull/131965
Addresses
https://github.com/llvm/llvm-project/pull/131965#issuecomment-2741619498
* Fixes isIncompleteType for injected classes
This clears up some uses of getClass on MemberPointerType when
equivalent uses of getMostRecentCXXRecordDecl would be just as simple or
simpler.
This is split-off from a larger patch which removes getClass, in order
to facilitate review.
Commit: 5286511adc94529c2d0ee9ea37c121ff7eaea223
https://github.com/llvm/llvm-project/commit/5286511adc94529c2d0ee9ea37c121ff7eaea223
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M lldb/test/API/commands/settings/TestSettings.py
Log Message:
-----------
[lldb][NFC] use platform independent path separator in testSettings.py. (#132392)
The build bot was failing when running remote test from windows to
linux.
>From #131683
---------
Signed-off-by: Ebuka Ezike <yerimyah1 at gmail.com>
Co-authored-by: Pavel Labath <pavel at labath.sk>
Commit: 857a04cd7670b629b560ba7e67c758a0c15e0841
https://github.com/llvm/llvm-project/commit/857a04cd7670b629b560ba7e67c758a0c15e0841
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/MachinePipeliner.cpp
A llvm/test/CodeGen/AArch64/sms-unpipeline-insts3.mir
Log Message:
-----------
[MachinePipeliner] Fix incorrect handlings of unpipelineable insts (#126057)
There was a case where `normalizeNonPipelinedInstructions` didn't
schedule unpipelineable instructions correctly, which could generate
illegal code. This patch fixes this issue by rejecting the schedule if
we fail to insert the unpipelineable instructions at stage 0.
Here is a part of the debug output for `sms-unpipeline-insts3.mir`
before applying this patch.
```
SU(0): %27:gpr32 = PHI %21:gpr32all, %bb.3, %28:gpr32all, %bb.4
Successors:
SU(14): Data Latency=0 Reg=%27
SU(15): Anti Latency=1
...
SU(14): %41:gpr32 = ADDWrr %27:gpr32, %12:gpr32common
Predecessors:
SU(0): Data Latency=0 Reg=%27
SU(16): Ord Latency=0 Artificial
Successors:
SU(15): Data Latency=1 Reg=%41
SU(15): %28:gpr32all = COPY %41:gpr32
Predecessors:
SU(14): Data Latency=1 Reg=%41
SU(0): Anti Latency=1
SU(16): %30:ppr = WHILELO_PWW_S %27:gpr32, %15:gpr32, implicit-def $nzcv
Predecessors:
SU(0): Data Latency=0 Reg=%27
Successors:
SU(14): Ord Latency=0 Artificial
...
Do not pipeline SU(16)
Do not pipeline SU(1)
Do not pipeline SU(0)
Do not pipeline SU(15)
Do not pipeline SU(14)
SU(0) is not pipelined; moving from cycle 19 to 0 Instr: ...
SU(1) is not pipelined; moving from cycle 10 to 0 Instr: ...
SU(15) is not pipelined; moving from cycle 28 to 19 Instr: ...
SU(16) is not pipelined; moving from cycle 19 to 0 Instr: ...
Schedule Found? 1 (II=10)
...
cycle 9 (1) (14) %41:gpr32 = ADDWrr %27:gpr32, %12:gpr32common
cycle 9 (1) (15) %28:gpr32all = COPY %41:gpr32
```
The SUs are traversed in the order of the original basic block, so in
this case a new cycle of each instruction is determined in the order of
`SU(0)`, `SU(1)`, `SU(14)`, `SU(15)`, `SU(16)`. Since there is an
artificial dependence from `SU(16)` to `SU(14)`, which is contradict to
the original SU order, the new cycle of `SU(14)` must be greater than or
equal to the cycle of `SU(16)` at that time. This results in the failure
of scheduling `SU(14)` at stage 0. For now, we reject the schedule for
such cases.
Commit: c4eec9eb52c604c1d54d86181bcce92f3cbc61ec
https://github.com/llvm/llvm-project/commit/c4eec9eb52c604c1d54d86181bcce92f3cbc61ec
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/matrix-multiply.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
Log Message:
-----------
[X86] combineConcatVectorOps - add concatenation handling for consecutive extracts of upper subvectors (#132389)
We already fold concat(extract_subvector(x,0), extract_subvector(x,numsubelts)) -> (wider lower half) extract_subvector(x,0)
This patch extends this handling for the concat(extract_subvector(x,c), extract_subvector(x,c+numsubelts)) -> (wider upper half) extract_subvector(x,c) case as well
Commit: 13c2378599ffd887319b2d314f307ea761596ec1
https://github.com/llvm/llvm-project/commit/13c2378599ffd887319b2d314f307ea761596ec1
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
A llvm/test/CodeGen/RISCV/rvv/stores-of-loads-merging.ll
R llvm/test/CodeGen/RISCV/stores-of-loads-merging.ll
Log Message:
-----------
[RISCV] Expand test coverage for DAG store merging
Two sets of additions:
1) Exercise the rotation path, both for integer and float
2) Exercise the aligned and unaligned paths separately
Commit: f0eeb9fb24d848012d6fab1cf018f99bd4d22127
https://github.com/llvm/llvm-project/commit/f0eeb9fb24d848012d6fab1cf018f99bd4d22127
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineGatherScatter - pull out repeated index sign bits code. NFC. (#132399)
Minor cleanup to make it easier to handle more index simplification and truncation to vXi32 types in future patches.
Commit: 0ea4fb92648b2aa7cbab486bb493e122b4dcc062
https://github.com/llvm/llvm-project/commit/0ea4fb92648b2aa7cbab486bb493e122b4dcc062
Author: Yi Qian <68618497+yiqian1 at users.noreply.github.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
M mlir/test/Conversion/AMDGPUToROCDL/8-bit-floats-ocp.mlir
M mlir/test/Conversion/AMDGPUToROCDL/8-bit-floats.mlir
M mlir/test/Conversion/ArithToAMDGPU/8-bit-floats-ocp.mlir
M mlir/test/Conversion/ArithToAMDGPU/8-bit-floats.mlir
M mlir/test/Dialect/AMDGPU/ops.mlir
M mlir/test/Dialect/LLVMIR/rocdl.mlir
M mlir/test/Target/LLVMIR/rocdl.mlir
Log Message:
-----------
[AMD][ROCDL] Add packed conversions fp8/bf8->bf16 and fp8/bf8->fp32 in ROCDL dialect (#131850)
- Add packed conversions fp8/bf8->bf16 for gfx950 and fp8/bf8->fp32 for
gfx942 in ROCDL dialect
- Update amdgpu.ext_packed_fp8 lowering to use ROCDL packed fp8/bf8->f32
conversions for vector target types and ROCDL scalar fp8/bf8->fp32 for
scalar target type.
---------
Co-authored-by: Jungwook Park <jungwook.park at amd.com>
Commit: 924c7ea76af0c3ab53dc7287d046fb614b4e33dc
https://github.com/llvm/llvm-project/commit/924c7ea76af0c3ab53dc7287d046fb614b4e33dc
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/Headers/avx10_2convertintrin.h
M clang/lib/Sema/SemaX86.cpp
M clang/test/CodeGen/X86/avx10_2convert-builtins.c
M llvm/include/llvm/IR/IntrinsicsX86.td
M llvm/lib/Target/X86/X86InstrAVX10.td
M llvm/lib/Target/X86/X86IntrinsicsInfo.h
M llvm/test/CodeGen/X86/avx10_2convert-intrinsics.ll
M llvm/test/MC/Disassembler/X86/avx10.2convert-32.txt
M llvm/test/MC/Disassembler/X86/avx10.2convert-64.txt
M llvm/test/MC/X86/avx10.2convert-32-att.s
M llvm/test/MC/X86/avx10.2convert-32-intel.s
M llvm/test/MC/X86/avx10.2convert-64-att.s
M llvm/test/MC/X86/avx10.2convert-64-intel.s
Log Message:
-----------
[X86][AVX10.2] Remove YMM rounding from VCVT2PS2PHX (#132397)
Ref: https://cdrdv2.intel.com/v1/dl/getContent/784343
Commit: 968ecc7bfe2eb98bd087fbb0ac529a4c1b81b482
https://github.com/llvm/llvm-project/commit/968ecc7bfe2eb98bd087fbb0ac529a4c1b81b482
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/AsmParser/LLParser.cpp
Log Message:
-----------
[AsmParser] Avoid repeated hash lookups (NFC) (#132328)
Commit: 67a631b40673ed061abcb842feb840d982dfc6d9
https://github.com/llvm/llvm-project/commit/67a631b40673ed061abcb842feb840d982dfc6d9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/StackColoring.cpp
Log Message:
-----------
[CodeGen] Avoid repeated hash lookups (NFC) (#132329)
Commit: e97a4cde8c6a135ceb85612d10ceaa5ab3dbcc53
https://github.com/llvm/llvm-project/commit/e97a4cde8c6a135ceb85612d10ceaa5ab3dbcc53
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
Log Message:
-----------
[Scalar] Avoid repeated hash lookups (NFC) (#132330)
Commit: a2661a9904f3633e438bcdc3922d99ef72ef27fb
https://github.com/llvm/llvm-project/commit/a2661a9904f3633e438bcdc3922d99ef72ef27fb
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Affine/Utils/LoopFusionUtils.cpp
Log Message:
-----------
[mlir] Avoid repeated hash lookups (NFC) (#132332)
Commit: a013387f73cec51c2df4f7732fa87aa01709cc89
https://github.com/llvm/llvm-project/commit/a013387f73cec51c2df4f7732fa87aa01709cc89
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h
M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
Log Message:
-----------
[DebugInfo] Use heterogenous lookups with std::map (NFC) (#132354)
Heterogenous lookups allow us to call find with StringRef, avoiding a
temporary heap allocation of std::string.
Commit: d4ce57cb98dbe753d246ae5395cc5ac6da8afa88
https://github.com/llvm/llvm-project/commit/d4ce57cb98dbe753d246ae5395cc5ac6da8afa88
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/generic/CMakeLists.txt
Log Message:
-----------
[libc] Fix unresolved stdio symbols (#132403)
Summary:
We have 'generic' implementations for some functions stdio functions.
The current logic mandates that all generic functions are implemented by
the target. This obviously isn't true and this caused the GPU builds to
fail once baremtal added some extra ones.
This patch changes the logic to always include the generic sources only
if they aren't already defined. This can probably be cleaned up and
formalized later, since this pattern is copied in many places, but for
now this fixes the failing GPU build bots.
Commit: f7a32b85b56b20382a8100498874ef9d3c5b0b77
https://github.com/llvm/llvm-project/commit/f7a32b85b56b20382a8100498874ef9d3c5b0b77
Author: tltao <tony.le.tao at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/TargetRegistry.h
M llvm/lib/MC/TargetRegistry.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/CMakeLists.txt
A llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
A llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
A llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.h
A llvm/test/CodeGen/SystemZ/zos-hlasm-out.ll
Log Message:
-----------
[MC][SystemZ] Introduce Target Specific HLASM Streamer for z/OS (#130535)
A more fleshed out version of a previous PR
https://github.com/llvm/llvm-project/pull/107415. The goal is to provide
platforms an alternative to the current MCAsmStreamer which only
supports the GNU Asm syntax.
RFC:
https://discourse.llvm.org/t/rfc-llvm-add-support-for-target-specific-asm-streamer/85095
---------
Co-authored-by: Tony Tao <tonytao at ca.ibm.com>
Commit: fa4bf3a11a42a098cae63cc81d99b262d34479fb
https://github.com/llvm/llvm-project/commit/fa4bf3a11a42a098cae63cc81d99b262d34479fb
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M lldb/test/API/commands/settings/TestSettings.py
Log Message:
-----------
[lldb][NFC] Fix test settings JSON check to compare expected path list. (#132410)
Previously, the test compared the JSON output to `setting_value` which
was incorrect. Updated the assertion to validate against the correct
list of paths `[path1, path2]` to ensure accurate test behavior.
Ran the test on the local computer
Signed-off-by: Ebuka Ezike <yerimyah1 at gmail.com>
Commit: 6bbd45dec7f3aef58accb935c685e802d6972dec
https://github.com/llvm/llvm-project/commit/6bbd45dec7f3aef58accb935c685e802d6972dec
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Passes/PatchEntries.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Utils/CommandLineOpts.cpp
Log Message:
-----------
[NFC][BOLT] Refactor ForcePatch option (#127812)
Move force-patch flag to CommandLineOpts and add details on
PatchEntries.
Commit: 79079c94699a4210bd500556d2864cbdf4a37e78
https://github.com/llvm/llvm-project/commit/79079c94699a4210bd500556d2864cbdf4a37e78
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/include/clang/AST/Attr.h
M clang/include/clang/AST/DeclOpenACC.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Serialization/ASTRecordReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/lib/AST/DeclOpenACC.cpp
M clang/lib/AST/DeclPrinter.cpp
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/AST/ast-print-openacc-routine-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-constructs.c
M clang/test/ParserOpenACC/parse-constructs.cpp
M clang/test/SemaOpenACC/routine-construct-ast.cpp
M clang/test/SemaOpenACC/routine-construct-clauses.cpp
M clang/test/SemaOpenACC/routine-construct.cpp
R clang/test/SemaOpenACC/unimplemented-construct.c
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
[OpenACC] Finish implementing 'routine' AST/Sema.
This is the last item of the OpenACC 3.3 spec. It includes the
implicit-name version of 'routine', plus significant refactorings to
make the two work together. The implicit name version is represented as
an attribute on the function call. This patch also implements the
clauses for the implicit-name version, as well as the A.3.4 warning.
Commit: 954a3de7838a8c496ef1d1730127415b3e9786f9
https://github.com/llvm/llvm-project/commit/954a3de7838a8c496ef1d1730127415b3e9786f9
Author: Justin Cady <desk at justincady.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/test/CoverageMapping/terminate-statements.cpp
A compiler-rt/test/profile/Linux/coverage-statement-expression.cpp
Log Message:
-----------
Reland [Coverage] Fix region termination for GNU statement expressions (#132222)
Relands #130976 with adjustments to test requirements.
Calls to __noreturn__ functions result in region termination for
coverage mapping. But this creates incorrect coverage results when
__noreturn__ functions (or other constructs that result in region
termination) occur within [GNU statement expressions][1].
In this scenario an extra gap region is introduced within VisitStmt,
such that if the following line does not introduce a new region it
is unconditionally counted as uncovered.
This change adjusts the mapping such that terminate statements
within statement expressions do not propagate that termination
state after the statement expression is processed.
[1]: https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html
Fixes #124296
Commit: f8865aa876a663a26d0b9ce5d26c9d6df6b9d18f
https://github.com/llvm/llvm-project/commit/f8865aa876a663a26d0b9ce5d26c9d6df6b9d18f
Author: David Peixotto <peix at meta.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M lldb/test/API/commands/process/launch/TestProcessLaunch.py
M lldb/test/API/source-manager/TestSourceManager.py
Log Message:
-----------
[lldb] Fix tests to resolve symlinks when checking paths (#132053)
The inferior used in the process launch test prints out its working
directory using the `getcwd` function, which is not allowed to return
symbolic links in the path components. When testing against the output
from `getcwd` we should resolve the full path to match the expected
output.
The source manager test sets a breakpoint on a main-copy.c file that is
copied into the build output directory. The source manager resolves this
path to its real location. When testing the output from the source cache
we need to resolve the expected path in the test to remove symlinks.
Commit: 4a2ab3afdb2dfed90fc2dc53c52fb3c97806e0f4
https://github.com/llvm/llvm-project/commit/4a2ab3afdb2dfed90fc2dc53c52fb3c97806e0f4
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
Log Message:
-----------
[RISCV] Remove trailing whitespace. NFC
Commit: bd6df0fe21faeaf3fd2a8ad17074f10620c78378
https://github.com/llvm/llvm-project/commit/bd6df0fe21faeaf3fd2a8ad17074f10620c78378
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M libc/CMakeLists.txt
M libc/src/__support/RPC/rpc_server.h
R libc/utils/gpu/CMakeLists.txt
R libc/utils/gpu/loader/CMakeLists.txt
R libc/utils/gpu/loader/Loader.h
R libc/utils/gpu/loader/Main.cpp
R libc/utils/gpu/loader/amdgpu/CMakeLists.txt
R libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
R libc/utils/gpu/loader/nvptx/CMakeLists.txt
R libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
M llvm/CMakeLists.txt
M llvm/runtimes/CMakeLists.txt
M llvm/tools/CMakeLists.txt
A llvm/tools/llvm-gpu-loader/CMakeLists.txt
A llvm/tools/llvm-gpu-loader/amdhsa.cpp
A llvm/tools/llvm-gpu-loader/llvm-gpu-loader.cpp
A llvm/tools/llvm-gpu-loader/llvm-gpu-loader.h
A llvm/tools/llvm-gpu-loader/nvptx.cpp
A llvm/tools/llvm-gpu-loader/server.h
Log Message:
-----------
Reapply "[LLVM] Make the GPU loader utilities an LLVM tool (#132096)" (#132277)
Summary:
There were a few issues with the first one, leading to some errors and
warnings. Most importantly, this was building on MSVC which isn't
supported.
Commit: f51e5f3f651af8a83d429fde54bf24ccb03fa420
https://github.com/llvm/llvm-project/commit/f51e5f3f651af8a83d429fde54bf24ccb03fa420
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.h
A clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.td
M clang/include/clang/CIR/Interfaces/CMakeLists.txt
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CMakeLists.txt
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
A clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
M clang/lib/CIR/Interfaces/CMakeLists.txt
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
A clang/test/CIR/CodeGen/loop.cpp
A clang/test/CIR/Transforms/loop.cir
Log Message:
-----------
[CIR] Upstream initial for-loop support (#132266)
This change adds support for empty for-loops. This will be the
infrastructre needed for complete for loops, but that depends on compare
operations, which have not been upstreamed yet.
Commit: 4dd7feab2bc81273f72c494f17ae0dc9661fdcf8
https://github.com/llvm/llvm-project/commit/4dd7feab2bc81273f72c494f17ae0dc9661fdcf8
Author: Jerry-Ge <jerry.ge at arm.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
A mlir/test/Dialect/Tosa/error_if_check.mlir
Log Message:
-----------
[mlir][tosa] Add more error_if checks for Resize Op (#132290)
Some of the error_if checks were missed in this PR:
https://github.com/llvm/llvm-project/pull/124956
Add back those tests to check suitable sizes for Resize
Signed-off-by: Luke Hutton <luke.hutton at arm.com>
Co-authored-by: Luke Hutton <luke.hutton at arm.com>
Commit: 14f7bd63b95d0f61a6f47119ac66398ca230559a
https://github.com/llvm/llvm-project/commit/14f7bd63b95d0f61a6f47119ac66398ca230559a
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/NestedNameSpecifier.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.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/TemplateArgumentHasher.cpp
M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
M clang/test/AST/ast-dump-templates.cpp
M clang/test/AST/ast-dump-types-json.cpp
M clang/test/AST/attr-print-emit.cpp
M clang/test/Analysis/cxx-uninitialized-object-ptr-ref.cpp
M clang/test/CXX/class.access/p6.cpp
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p5.cpp
M clang/test/Index/print-type.cpp
M clang/test/SemaCXX/addr-of-overloaded-function.cpp
M clang/test/SemaCXX/builtin-ptrtomember-ambig.cpp
M clang/test/SemaCXX/calling-conv-compat.cpp
M clang/test/SemaCXX/err_init_conversion_failed.cpp
M clang/test/SemaCXX/member-pointer.cpp
M clang/test/SemaOpenACC/combined-construct-if-ast.cpp
M clang/test/SemaOpenACC/combined-construct-num_workers-ast.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-intexpr-clause-ast.cpp
M clang/test/SemaOpenACC/data-construct-if-ast.cpp
M clang/test/SemaTemplate/instantiate-member-pointers.cpp
M clang/tools/libclang/CXType.cpp
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
Reland: [clang] preserve class type sugar when taking pointer to member (#132401)
Original PR: #130537
Originally reverted due to revert of dependent commit. Relanding with no
changes.
This changes the MemberPointerType representation to use a
NestedNameSpecifier instead of a Type to represent the base class.
Since the qualifiers are always parsed as nested names, there was an
impedance mismatch when converting these back and forth into types, and
this led to issues in preserving sugar.
The nested names are indeed a better match for these, as the differences
which a QualType can represent cannot be expressed syntatically, and
they represent the use case more exactly, being either dependent or
referring to a CXXRecord, unqualified.
This patch also makes the MemberPointerType able to represent sugar for
a {up/downcast}cast conversion of the base class, although for now the
underlying type is canonical, as preserving the sugar up to that point
requires further work.
As usual, includes a few drive-by fixes in order to make use of the
improvements.
Commit: b858ba0f6597c66e5c276ca9e2564ca27e7e28e7
https://github.com/llvm/llvm-project/commit/b858ba0f6597c66e5c276ca9e2564ca27e7e28e7
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/test/Preprocessor/riscv-target-features.c
Log Message:
-----------
[RISCV] Fix capitalization of CHECK prefix in riscv-target-features.c. NFC
Commit: 5afa0fa9a6ba482cdc87945b71f5cd626b754d8f
https://github.com/llvm/llvm-project/commit/5afa0fa9a6ba482cdc87945b71f5cd626b754d8f
Author: Daniel Zabawa <daniel.zabawa at intel.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86CompressEVEX.cpp
M llvm/lib/Target/X86/X86InstrInfo.cpp
A llvm/test/CodeGen/X86/apx/ndd-false-deps-asm.mir
A llvm/test/CodeGen/X86/apx/ndd-false-deps.mir
Log Message:
-----------
[X86] Prevent APX NDD compression when it creates a partial write (#132051)
APX NDD instructions may be compressed when the result is also a source.
For 8/16b instructions, this may create partial register write hazards
if a previous super-register def is within the partial reg update
clearance, or incorrect code if the super-register is not dead.
This change prevents compression when the super-register is marked as an
implicit define, which the virtual rewriter already adds in the case
where a subregister is defined but the super-register is not dead.
The BreakFalseDeps interface is also updated to add implicit
super-register defs for NDD instructions that would incur partial-write
stalls if compressed to legacy ops.
Commit: 72d1058af0f065c63cc5bb36a93cc5824429fac7
https://github.com/llvm/llvm-project/commit/72d1058af0f065c63cc5bb36a93cc5824429fac7
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
Log Message:
-----------
[BOLT] Gadget scanner: refactor analysis of RET instructions (#131897)
In preparation for implementing detection of more gadget kinds,
refactor checking for non-protected return instructions.
Commit: ff9c5c334ad4a93b33703396a401838df2dedc35
https://github.com/llvm/llvm-project/commit/ff9c5c334ad4a93b33703396a401838df2dedc35
Author: Tony Varghese <tonypalampalliyil at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
M llvm/lib/CodeGen/ShrinkWrap.cpp
M llvm/lib/Target/PowerPC/PPCRegisterInfo.h
M llvm/test/CodeGen/PowerPC/shrink-wrap-frame-pointer.ll
Log Message:
-----------
[shrinkwrap] PowerPC's FP register should be honored when processing the save point for prologue. (#129855)
When generating code for functions that have `__builtin_frame_address`
calls and `noinline` attribute, prologue was not emitted correctly
leading to an assertion failure in PowerPC. The issue was due to
improper insertion of prologue for a function that contain llvm
`__builtin_frame_address`.
Shrink-wrap pass computes the save and restore points of a function.
Default points are the entry and exit points of the function. During
shrink-wrapping the frame-pointer was not honored like the stack pointer
and it was considered as a callee-saved register. This change will treat
the FP similar to SP and will insert the prolog on top the instruction
containing FP.
---------
Co-authored-by: Tony Varghese <tony.varghese at ibm.com>
Commit: d7e7e0af485a5266819cb90dc72e09d67898510f
https://github.com/llvm/llvm-project/commit/d7e7e0af485a5266819cb90dc72e09d67898510f
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/Headers/avx10_2minmaxintrin.h
M clang/lib/Sema/SemaX86.cpp
M clang/test/CodeGen/X86/avx10_2_512minmax-error.c
M clang/test/CodeGen/X86/avx10_2minmax-builtins.c
M llvm/include/llvm/IR/IntrinsicsX86.td
M llvm/lib/Target/X86/X86InstrAVX10.td
M llvm/lib/Target/X86/X86IntrinsicsInfo.h
M llvm/test/CodeGen/X86/avx10_2minmax-intrinsics.ll
M llvm/test/MC/Disassembler/X86/avx10.2minmax-32.txt
M llvm/test/MC/Disassembler/X86/avx10.2minmax-64.txt
M llvm/test/MC/X86/avx10.2minmax-32-att.s
M llvm/test/MC/X86/avx10.2minmax-32-intel.s
M llvm/test/MC/X86/avx10.2minmax-64-att.s
M llvm/test/MC/X86/avx10.2minmax-64-intel.s
Log Message:
-----------
[X86][AVX10.2] Remove YMM rounding from VMINMAXP[H,S,D] (#132405)
Ref: https://cdrdv2.intel.com/v1/dl/getContent/784343
Commit: 7be243add2bb89461f647ae74af730e149833c1b
https://github.com/llvm/llvm-project/commit/7be243add2bb89461f647ae74af730e149833c1b
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M libcxx/include/__chrono/convert_to_tm.h
Log Message:
-----------
[NFC][libc++][chrono] Removes dead code. (#132104)
For certain time_points there are specializations of __convert_to_tm.
This means the non-specialized version is never called. This means some
of the `if constexpr` will never be true. These are removed.
Since there is a `static_assert` accidental removal of the
specialization will make the code ill-formed.
Commit: f60bec9b42dead6ad5a0dc4c9bd546671977df95
https://github.com/llvm/llvm-project/commit/f60bec9b42dead6ad5a0dc4c9bd546671977df95
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M libcxx/include/chrono
Log Message:
-----------
[libc++][chrono] Adds a missing main include. (#132100)
Commit: 5f949924578c0314a1f7c3cfdd63b1ef8edb62ba
https://github.com/llvm/llvm-project/commit/5f949924578c0314a1f7c3cfdd63b1ef8edb62ba
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/test/CodeGen/RISCV/rvv/expandload.ll
M llvm/test/CodeGen/RISCV/rvv/stack-slot-coloring.mir
Log Message:
-----------
[RISCV] isLoadFromStackSlot and isStoreToStackSlot for vector spill/fill (#132296)
This is an adapted version of arsenm's
https://github.com/llvm/llvm-project/pull/120524.
The intention of the change is to enable dead stack slot copy
elimination in StackSlotColoring for vector loads and stores. In terms
of testing, see stack-slot-coloring.mir. This has little impact on in
tree tests otherwise.
This change has a different and smaller set of test diffs then then
@arsenm's patch because I'm using scalable sizes for the LMULs, not a
single signal value. His patch allowed vector load/store pairs of
different width to be deleted, mine does not. There's also simply been a
lot of churn in regalloc behavior on these particular tests recently, so
that may explain some of the diff as well.
Commit: e1a16033dcb856669c97f35c09656db73bf36a73
https://github.com/llvm/llvm-project/commit/e1a16033dcb856669c97f35c09656db73bf36a73
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/Headers/avx10_2satcvtdsintrin.h
M clang/lib/Sema/SemaX86.cpp
R clang/test/CodeGen/X86/avx10_2satcvtds-builtins-errors.c
M clang/test/CodeGen/X86/avx10_2satcvtds-builtins-x64.c
M clang/test/CodeGen/X86/avx10_2satcvtds-builtins.c
M llvm/include/llvm/IR/IntrinsicsX86.td
M llvm/lib/Target/X86/X86InstrAVX10.td
M llvm/lib/Target/X86/X86IntrinsicsInfo.h
M llvm/test/CodeGen/X86/avx10_2satcvtds-intrinsics.ll
M llvm/test/MC/Disassembler/X86/avx10.2-satcvtds-32.txt
M llvm/test/MC/Disassembler/X86/avx10.2-satcvtds-64.txt
M llvm/test/MC/X86/avx10_2satcvtds-32-att.s
M llvm/test/MC/X86/avx10_2satcvtds-32-intel.s
M llvm/test/MC/X86/avx10_2satcvtds-64-att.s
M llvm/test/MC/X86/avx10_2satcvtds-64-intel.s
Log Message:
-----------
[X86][AVX10.2] Remove YMM rounding from VCVTTP.*QS (#132414)
Ref: https://cdrdv2.intel.com/v1/dl/getContent/784343
Commit: b3e64fbc31702ea7e4d96fa410888a94223b599e
https://github.com/llvm/llvm-project/commit/b3e64fbc31702ea7e4d96fa410888a94223b599e
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMMCInstLower.cpp
M llvm/lib/Target/ARM/ARMTargetObjectFile.cpp
M llvm/lib/Target/ARM/ARMTargetObjectFile.h
Log Message:
-----------
[ARM] Prepare for VariantKind to specifier rename. NFC
Commit: 1cbcaa458020d7fa2b9b5d91db609f5a81d59346
https://github.com/llvm/llvm-project/commit/1cbcaa458020d7fa2b9b5d91db609f5a81d59346
Author: Florian Mayer <fmayer at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/include/clang/Analysis/FlowSensitive/SmartPointerAccessorCaching.h
M clang/lib/Analysis/FlowSensitive/SmartPointerAccessorCaching.cpp
M clang/unittests/Analysis/FlowSensitive/SmartPointerAccessorCachingTest.cpp
Log Message:
-----------
[clang][dataflow] Add matcher for pointer-like types to be cached (#132314)
This is used e.g. for iterators.
Commit: 3b0ec611565ca603389db6d71e1c917f22439456
https://github.com/llvm/llvm-project/commit/3b0ec611565ca603389db6d71e1c917f22439456
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC] Redesign schedule bundle, separate from schedule data, NFC
That's the initial patch, intended to support revectorization of the
previously vectorized scalars. If the scalar is marked for the
vectorization, it becomes a part of the schedule bundle, used to check
dependencies and then schedule tree entry scalars into a single batch of
instructions. Unfortunately, currently this info is part of the
ScheduleData struct and it does not allow making scalars part of many
bundles. The patch separates schedule bundles from the ScheduleData,
introduces explicit class ScheduleBundle for bundles, allowing later to
extend it to support revectorization of the previously vectorized
scalars.
Reviewers: hiraditya, RKSimon
Reviewed By: RKSimon, hiraditya
Pull Request: https://github.com/llvm/llvm-project/pull/131625
Commit: cb2ee1e64db663ec8b39554a3cf93cc924d89818
https://github.com/llvm/llvm-project/commit/cb2ee1e64db663ec8b39554a3cf93cc924d89818
Author: Akshay Deodhar <adeodhar at nvidia.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXPassRegistry.def
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
Log Message:
-----------
[NVPTX][NVPTXLowerArgs] Add NewPM interface for NVPTXLowerArgs (#128960)
Add a NewPM interface for NVPTXLowerArgs
Commit: b13373db251f4ee0e6471783ce8d86e74c3f1928
https://github.com/llvm/llvm-project/commit/b13373db251f4ee0e6471783ce8d86e74c3f1928
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/lib/Target/SystemZ/SystemZISelLowering.h
Log Message:
-----------
[SystemZ] Use hasAddressTaken() with verifyNarrowIntegerArgs (NFC). (#131039)
Use hasAddressTaken() in SystemZ instead of doing this computation in
isFullyInternal(), and make sure to only do this once per Function.
Commit: 993311799b8f12dfebdc7cb1ea5c06061df700c6
https://github.com/llvm/llvm-project/commit/993311799b8f12dfebdc7cb1ea5c06061df700c6
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M bolt/lib/Passes/PAuthGadgetScanner.cpp
Log Message:
-----------
[BOLT] Fix a warning
This patch fixes:
bolt/lib/Passes/PAuthGadgetScanner.cpp:438:18: error: unused
variable 'BC' [-Werror,-Wunused-variable]
Commit: 8d78b7cc7d6983a3984fefc056f28687a8a5cfc6
https://github.com/llvm/llvm-project/commit/8d78b7cc7d6983a3984fefc056f28687a8a5cfc6
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/lib/IR/Type.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
Log Message:
-----------
[RISCV] Introduce RISCV::RVVBytesPerBlock to simplify code [nfc] (#132436)
Commit: a17b03f0e450eee8c8a2e0ec58bf2a1dede23aba
https://github.com/llvm/llvm-project/commit/a17b03f0e450eee8c8a2e0ec58bf2a1dede23aba
Author: lntue <lntue at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M libc/config/darwin/arm/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/generic/CMakeLists.txt
A libc/src/math/generic/atan.cpp
M libc/src/math/generic/atan2.cpp
A libc/src/math/generic/atan_utils.h
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/atan_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/atan_test.cpp
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:
-----------
[libc][math] Implement fast pass for double precision atan function. (#132333)
Implement fast pass for double precision `atan` using range reduction
modulo 1/64 and degree-9 Taylor polynomial.
Relative error is bounded by 2^-66.
Commit: 312051591c0b99042b78ade7a17a7daaabbaa992
https://github.com/llvm/llvm-project/commit/312051591c0b99042b78ade7a17a7daaabbaa992
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M .github/workflows/scorecard.yml
Log Message:
-----------
[Github] Fix scorecard action (#131472)
This patch fixes the scorecard action. It is currently failing with an
error due to the upload-artifact action being too far out of date.
https://github.com/llvm/llvm-project/actions/runs/13865016326/job/38802095257
is an example of a job failure.
This patch also bumps the other actions versions while we are at it.
Commit: 9f919661dd2ffe0f9666564e186da68fae401a9e
https://github.com/llvm/llvm-project/commit/9f919661dd2ffe0f9666564e186da68fae401a9e
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M .github/workflows/build-ci-container.yml
M .github/workflows/commit-access-greeter.yml
M .github/workflows/commit-access-review.yml
M .github/workflows/release-asset-audit.yml
M .github/workflows/release-binaries-all.yml
M .github/workflows/release-binaries.yml
Log Message:
-----------
[Github] Bump most actions to ubuntu 24.04 (#131760)
This patch bumps most of the workflows to ubuntu 24.04, with the
exception of worklfows that depend on the CI container, which will need
to be updated separately before we are then able to use it for the other
workflows.
Commit: d6a2cca77e3c88755e0f6b0acefffdcfa5eb2fec
https://github.com/llvm/llvm-project/commit/d6a2cca77e3c88755e0f6b0acefffdcfa5eb2fec
Author: pzzp <pzzp11 at outlook.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CGExprConstant.cpp
M llvm/include/llvm/IR/Constants.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/Target/TargetLoweringObjectFile.cpp
M llvm/lib/Target/X86/X86MCInstLower.cpp
Log Message:
-----------
[llvm:ir] Add support for constant data exceeding 4GiB (#126481)
The test file is over 4GiB, which is too big, so I didn’t submit it.
Commit: 5ecbf46f8645e6294fab129c989fca67fd85d689
https://github.com/llvm/llvm-project/commit/5ecbf46f8645e6294fab129c989fca67fd85d689
Author: metkarpoonam <poonammetkar at microsoft.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
A clang/test/CodeGenHLSL/builtins/asuint16.hlsl
A clang/test/SemaHLSL/BuiltIns/asuint16-errors.hlsl
Log Message:
-----------
Hlsl asuint16 function (#132315)
Implemented the asuint16 function and added test cases for codegen,
Sema, and SPIR-V backend.
fixes https://github.com/llvm/llvm-project/issues/99185
Commit: 0f400cb3ac2aebfde27324f871d86f94f355605a
https://github.com/llvm/llvm-project/commit/0f400cb3ac2aebfde27324f871d86f94f355605a
Author: Cassandra Beckley <cbeckley at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_DispatchThreadID.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_GroupID.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_GroupThreadID.ll
Log Message:
-----------
[SPIR-V] Don't add linkage attributes for input variables (#132301)
Fixes #131878
Commit: 3757ecf5f16c0d9b8cbfc1c9d41965df537d43e6
https://github.com/llvm/llvm-project/commit/3757ecf5f16c0d9b8cbfc1c9d41965df537d43e6
Author: Cassandra Beckley <cbeckley at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/test/CodeGenHLSL/semantics/GroupIndex-codegen.hlsl
Log Message:
-----------
[HLSL] Add support for SV_GroupIndex in SPIR-V (#130672)
Lower the `SV_GroupIndex` semantic as the
`llvm.spv.flattened.thread.id.in.group` intrinsic.
Depends on #130670.
---------
Co-authored-by: Steven Perron <stevenperron at google.com>
Commit: 7f920e2e5f70b25c79adbc0b1005b1d1286d4681
https://github.com/llvm/llvm-project/commit/7f920e2e5f70b25c79adbc0b1005b1d1286d4681
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
A clang/lib/CodeGen/CGBuiltin.h
M clang/lib/CodeGen/CMakeLists.txt
A clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
A clang/lib/CodeGen/TargetBuiltins/ARM.cpp
A clang/lib/CodeGen/TargetBuiltins/Hexagon.cpp
A clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
A clang/lib/CodeGen/TargetBuiltins/PPC.cpp
A clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
A clang/lib/CodeGen/TargetBuiltins/SPIR.cpp
A clang/lib/CodeGen/TargetBuiltins/SystemZ.cpp
A clang/lib/CodeGen/TargetBuiltins/WebAssembly.cpp
A clang/lib/CodeGen/TargetBuiltins/X86.cpp
Log Message:
-----------
[NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (#132252)
clang/lib/CodeGen/CGBuiltin.cpp is over 1MB long (>23k LoC), and can
take minutes to recompile (depending on compiler and host system) when
modified, and 5 seconds for clangd to update for every edit. Splitting
this file was discussed in this thread:
https://discourse.llvm.org/t/splitting-clang-s-cgbuiltin-cpp-over-23k-lines-long-takes-1min-to-compile/
and the idea has received a number of +1 votes, hence this change.
Commit: c031579cb7d7f2d0cdcc0157ce780faf43f0d8ed
https://github.com/llvm/llvm-project/commit/c031579cb7d7f2d0cdcc0157ce780faf43f0d8ed
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M flang/lib/Optimizer/OpenMP/GenericLoopConversion.cpp
M flang/test/Lower/OpenMP/loop-directive.f90
Log Message:
-----------
[flang][OpenMP] Hoist reduction info from nested `loop` ops to parent `teams` ops (#132003)
Fixes a bug in reductions when converting `teams loop` constructs with
`reduction` clauses.
According to the spec (v5.2, p340, 36):
```
The effect of the reduction clause is as if it is applied to all leaf
constructs that permit the clause, except for the following constructs:
* ....
* The teams construct, when combined with the loop construct.
```
Therefore, for a combined directive similar to: `!$omp teams loop
reduction(...)`, the earlier stages of the compiler assign the
`reduction` clauses only to the `loop` leaf and not to the `teams` leaf.
On the other hand, if we have a combined construct similar to: `!$omp
teams distribute parallel do`, the `reduction` clauses are assigned both
to the `teams` and the `do` leaves. We need to match this behavior when
we convert `teams` op with a nested `loop` op since the target set of
constructs/ops will be incorrect without moving the reductions up to the
`teams` op as well.
This PR introduces a pattern that does exactly this. Given the following
input:
```
omp.teams {
omp.loop reduction(@red_sym %red_op -> %red_arg : !fir.ref<i32>) {
omp.loop_nest ... {
...
}
}
}
```
this pattern updates the `omp.teams` op in-place to:
```
omp.teams reduction(@red_sym %red_op -> %teams_red_arg : !fir.ref<i32>) {
omp.loop reduction(@red_sym %teams_red_arg -> %red_arg : !fir.ref<i32>) {
omp.loop_nest ... {
...
}
}
}
```
Note the following:
* The nested `omp.loop` is not rewritten by this pattern, this happens
through `GenericLoopConversionPattern`.
* The reduction info are cloned from the nested `omp.loop` op to the
parent `omp.teams` op.
* The reduction operand of the `omp.loop` op is updated to be the
**new** reduction block argument of the `omp.teams` op.
Commit: f1ac2afe213f2e438e2959fe54578776e6919fe2
https://github.com/llvm/llvm-project/commit/f1ac2afe213f2e438e2959fe54578776e6919fe2
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/CodeGen/amdgpu-address-spaces.cpp
M clang/test/CodeGenCUDA/amdgpu-code-object-version.cu
M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
M clang/test/CodeGenHIP/default-attributes.hip
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
A clang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_abi_version_600.bc
A clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_abi_version_600.bc
A clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_abi_version_600.bc
M clang/test/Driver/hip-device-libs.hip
M clang/test/OpenMP/amdgcn_target_global_constructor.cpp
M libc/cmake/modules/prepare_libc_gpu_build.cmake
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
A llvm/test/CodeGen/AMDGPU/default_amdhsa_code_object_version.ll
Log Message:
-----------
Reapply "[AMDGPU] Use COV6 by default (#118515)" (#130963)
This reverts commit 68bcba6d7a1cc18996c0bcb7c62267c62d2040d0.
Commit: bf5648a3be313f65939c74e2690cb7e8058f5a13
https://github.com/llvm/llvm-project/commit/bf5648a3be313f65939c74e2690cb7e8058f5a13
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M .github/workflows/issue-write.yml
Log Message:
-----------
[Github] Bump actions script version to v7 (#131471)
This patch bumps the actions script version in the issue-write workflow
to v7. This was done before but rolled back due to errors as there were
breaking changes in v5
(https://github.com/actions/github-script#breaking-changes-in-v5). This
was reverted in f984b47.
This patch makes the necessary changes to prevent job failures.
Fixes #130211.
Commit: 052a4b54a75364f13ea5001bba00691da4d8c239
https://github.com/llvm/llvm-project/commit/052a4b54a75364f13ea5001bba00691da4d8c239
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M .ci/monolithic-linux.sh
Log Message:
-----------
[CI] Clean up runtimes builds (#131913)
This patch cleans up the runtimes build in premerge due to queuing
delays, dropping the C++03 testing, but keeping the C++20 and Modules
configurations as they are deemed important by clang contributors.
This patch also makes it easier in the future when we need to rework the
runtimes build to anticipate the deprecation of building most of the
runtimes with LLVM_ENABLE_PROJECTS.
Commit: 6b00ae6359b6442b827d0961357a09ec8dce72a4
https://github.com/llvm/llvm-project/commit/6b00ae6359b6442b827d0961357a09ec8dce72a4
Author: Ethan Kaji <ethan.kaji at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
Log Message:
-----------
[DAG] SDPatternMatch - add matchers for reassociatable binops (#119985)
fixes https://github.com/llvm/llvm-project/issues/118847
implements matchers for reassociatable opcodes as well as helpers for
commonly used reassociatable binary matchers.
---------
Co-authored-by: Min-Yih Hsu <min at myhsu.dev>
Commit: cf6c451a38ce786bbbf225509290c8d7f2695005
https://github.com/llvm/llvm-project/commit/cf6c451a38ce786bbbf225509290c8d7f2695005
Author: Kelvin Li <kkwli at users.noreply.github.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M flang/CMakeLists.txt
M flang/tools/flang-driver/CMakeLists.txt
Log Message:
-----------
[flang] set the paths for the symbol extracting tool (#131375)
This patch is to set the paths for tools used in the
`export_executable_symbols` function in standalone build and set the
necessary macros for compiling the runtime source.
Commit: 5b090793744ad892166e97a7b2c05ddf904d915b
https://github.com/llvm/llvm-project/commit/5b090793744ad892166e97a7b2c05ddf904d915b
Author: Reid Kleckner <rnk at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/docs/DeveloperPolicy.rst
Log Message:
-----------
Minor developer policy edits for clarity (#132313)
There should be no substantial policy change here.
I reordered the breaking change docs after the major change docs, since
that flow made sense to me. I smoothed out some of the incremental
development policy wording to be a bit less black and white, and talk
about "preferred" and "discouraged" approaches.
Commit: 900be712ce4fe56e2165bfe4e9213b555bfe3887
https://github.com/llvm/llvm-project/commit/900be712ce4fe56e2165bfe4e9213b555bfe3887
Author: Han-Chung Wang <hanhan0912 at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/test/Dialect/Linalg/canonicalize.mlir
Log Message:
-----------
[mlir][Linalg] Preserve encodings in static shape inference. (#132311)
Previously, the encodings are unconditionally dropped during the shape
inference. The revision adds the support for preserving the encodings in
the linalg ops.
---------
Signed-off-by: hanhanW <hanhan0912 at gmail.com>
Commit: 7606f6773cb5abe701b615b0bec54e68758955d7
https://github.com/llvm/llvm-project/commit/7606f6773cb5abe701b615b0bec54e68758955d7
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/include/clang/Lex/HeaderSearchOptions.h
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Serialization/GeneratePCH.cpp
Log Message:
-----------
[clang] NFCI: Mutate `HeaderSearchOptions` earlier (#130823)
Commit: 896df5c4bf77a9a8933c0a5cfdcabccad4c50471
https://github.com/llvm/llvm-project/commit/896df5c4bf77a9a8933c0a5cfdcabccad4c50471
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/issue100880-mismatched-call-type.ll
A llvm/test/tools/llvm-reduce/operands-to-args-wrong-call-type-issue69312.ll
M llvm/tools/llvm-reduce/deltas/ReduceOperandsToArgs.cpp
Log Message:
-----------
llvm-reduce: Fix assert if call type mismatches function type (#131981)
Commit: 72e596f35951e849de9fc739238e84ec1217b939
https://github.com/llvm/llvm-project/commit/72e596f35951e849de9fc739238e84ec1217b939
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/include/clang/Lex/HeaderSearch.h
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Serialization/ASTReader.cpp
Log Message:
-----------
[clang] Make `HeaderSearchOptions` references const (#130825)
This PR makes the `HeaderSearchOptions` object referenced by
`HeaderSearch` constant. Depends on #130823.
Commit: 8d67d00a945d1b2b74b422edc8214cb1081e6487
https://github.com/llvm/llvm-project/commit/8d67d00a945d1b2b74b422edc8214cb1081e6487
Author: Peter Collingbourne <pcc at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
gn build: libcxx: Select the std_thread pstl backend.
In the CMake build the default pstl backend for libc++ when threads are
enabled is std_thread. By selecting the wrong backend we were triggering
some transitive_includes test failures.
Reviewers: aeubanks, nico
Reviewed By: aeubanks
Pull Request: https://github.com/llvm/llvm-project/pull/132455
Commit: acdb0c1f99a50ef357ac75ae1151991ca40aba10
https://github.com/llvm/llvm-project/commit/acdb0c1f99a50ef357ac75ae1151991ca40aba10
Author: Jessica Clarke <jrtc27 at jrtc27.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/unittests/Target/DirectX/CMakeLists.txt
Log Message:
-----------
[test][DXIL] Add to LLVM_LINK_COMPONENTS to fix BUILD_SHARED_LIBS build
Commit: ecaef010f31e2557d94b4d98774ca4b4d5fe2149
https://github.com/llvm/llvm-project/commit/ecaef010f31e2557d94b4d98774ca4b4d5fe2149
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M flang-rt/lib/cuda/memory.cpp
Log Message:
-----------
[flang][cuda] Support corner case of data transfer (#132451)
The flang runtime will complain when the number of elements in the two
descriptors involved in the data transfer are not matching.
In some cases, we can still perform the data transfer to match the
behavior of the reference compiler.
When the RHS elements count is bigger than the LHS elements count and
both descriptors are contiguous, we can perform the data transfer with
the bare pointers and the number of bytes from the LHS.
We don't really have unit tests set up for data transfer, this is why I
didn't include one here.
Commit: 98dc8bb892e984bc5dbd0f30f4c3a2876791c518
https://github.com/llvm/llvm-project/commit/98dc8bb892e984bc5dbd0f30f4c3a2876791c518
Author: Mohamed Emad <73320969+hulxv at users.noreply.github.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang-tools-extra/clang-doc/Representation.h
Log Message:
-----------
[clang-doc][NFC] fix description typo (#132310)
Fix the description typo for `JsScripts` in the context
discussed in #131280
Commit: 7c52886700a5a70d873400ec022a99d7dce8b03b
https://github.com/llvm/llvm-project/commit/7c52886700a5a70d873400ec022a99d7dce8b03b
Author: Henry Jiang <h243jian at uwaterloo.ca>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/test/Transforms/LoopIdiom/strlen-not-emittable.ll
M llvm/test/Transforms/LoopIdiom/strlen.ll
M llvm/test/Transforms/LoopIdiom/wcslen16.ll
M llvm/test/Transforms/LoopIdiom/wcslen32.ll
Log Message:
-----------
[Transform] Clean up strlen loop idiom (#132421)
We should bailout of modifying the CFG if the library functions are not
emittable or disabled.
Commit: 44573bc1528831b13b17afac158f4860af42570e
https://github.com/llvm/llvm-project/commit/44573bc1528831b13b17afac158f4860af42570e
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/lib/Sema/HeuristicResolver.cpp
M clang/unittests/Sema/HeuristicResolverTest.cpp
Log Message:
-----------
[clang][HeuristicResolver] Default argument heuristic for template parameters (#132465)
Fixes https://github.com/clangd/clangd/discussions/1056
Commit: 718838d128f201279c489f0a2959fec4f47a42be
https://github.com/llvm/llvm-project/commit/718838d128f201279c489f0a2959fec4f47a42be
Author: metkarpoonam <poonammetkar at microsoft.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
A clang/test/CodeGenHLSL/builtins/asint16.hlsl
A clang/test/SemaHLSL/BuiltIns/asint16-errors.hlsl
M llvm/test/CodeGen/SPIRV/bitcast.ll
Log Message:
-----------
Hlsl asint16 intrinsic (#131900)
Implemented the asint16 function and added test cases for codegen, Sema,
and SPIR-V backend.
fixes https://github.com/llvm/llvm-project/issues/99184
---------
Co-authored-by: Ashley Coleman <ascoleman at microsoft.com>
Commit: 6419905f53d4dbdb9d49358115ccba873f674dd4
https://github.com/llvm/llvm-project/commit/6419905f53d4dbdb9d49358115ccba873f674dd4
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
Log Message:
-----------
[RISCV] Correct qc.e.li instruction definition (#132380)
The instruction has no tied operands. It was incorrectly using
QCIRVInstEAI which has a tied operand for the destination register.
Commit: 4517a332df63e4c77ff7dbdb12b428613d45fd62
https://github.com/llvm/llvm-project/commit/4517a332df63e4c77ff7dbdb12b428613d45fd62
Author: Paddy McDonald <paddy_mcdonald at apple.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M compiler-rt/test/asan/TestCases/Darwin/suppressions-sandbox.cpp
Log Message:
-----------
[Darwin][ASan][Test] Create a unoptimized wrapper function in unsanitized dylib for reliable suppression in test. (#131906)
CFStringCreateWithBytes may not always appear on stack due to
optimizations.
Create a wrapper function for the purposes of testing suppression files
that will always appear on stack for test stability.
Test should be suppressing ASan for a function outside of sanitized
code.
Update function to be extern "C" to match function decoration in
original framework and avoid the leak caused by DemangleCXXABI.
rdar://144800068
Commit: df4257b03824f8e4ff4e06d7dff1bed153a9862d
https://github.com/llvm/llvm-project/commit/df4257b03824f8e4ff4e06d7dff1bed153a9862d
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/Headers/avx10_2satcvtintrin.h
M clang/lib/Sema/SemaX86.cpp
R clang/test/CodeGen/X86/avx10_2_512satcvt-builtins-error.c
M clang/test/CodeGen/X86/avx10_2satcvt-builtins.c
M llvm/include/llvm/IR/IntrinsicsX86.td
M llvm/lib/Target/X86/X86InstrAVX10.td
M llvm/lib/Target/X86/X86IntrinsicsInfo.h
M llvm/test/CodeGen/X86/avx10_2satcvt-intrinsics.ll
M llvm/test/MC/Disassembler/X86/avx10.2-satcvt-32.txt
M llvm/test/MC/Disassembler/X86/avx10.2-satcvt-64.txt
M llvm/test/MC/X86/avx10.2satcvt-32-att.s
M llvm/test/MC/X86/avx10.2satcvt-32-intel.s
M llvm/test/MC/X86/avx10.2satcvt-64-att.s
M llvm/test/MC/X86/avx10.2satcvt-64-intel.s
Log Message:
-----------
[X86][AVX10.2] Remove YMM rounding from VCVT[,T]PS2I[,U]BS (#132426)
Ref: https://cdrdv2.intel.com/v1/dl/getContent/784343
Commit: c0b2c10e9f3a939c227a26aec3ba377f7cc25667
https://github.com/llvm/llvm-project/commit/c0b2c10e9f3a939c227a26aec3ba377f7cc25667
Author: Alexey Karyakin <akaryaki at quicinc.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M lld/ELF/Arch/Hexagon.cpp
M lld/docs/ReleaseNotes.rst
M lld/test/ELF/emulation-hexagon.s
M lld/test/ELF/hexagon-eflag.s
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/test/CodeGen/Hexagon/arg-copy-elison.ll
M llvm/test/CodeGen/Hexagon/atomicrmw-cond-sub-clamp.ll
M llvm/test/CodeGen/Hexagon/atomicrmw-uinc-udec-wrap.ll
M llvm/test/CodeGen/Hexagon/bank-conflict.mir
M llvm/test/CodeGen/Hexagon/branchfolder-insert-impdef.mir
M llvm/test/CodeGen/Hexagon/fixed-spill-mutable.ll
M llvm/test/CodeGen/Hexagon/isel-memory-vNi1.ll
M llvm/test/CodeGen/Hexagon/isel/logical.ll
M llvm/test/CodeGen/Hexagon/isel/select-i1.ll
M llvm/test/CodeGen/Hexagon/postinc-baseoffset.mir
M llvm/test/CodeGen/Hexagon/setmemrefs.ll
M llvm/test/MC/Hexagon/arch-support.s
M llvm/test/MC/Hexagon/hexagon_attributes.s
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/hexagon_generated_funcs.ll.generated.expected
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/hexagon_generated_funcs.ll.nogenerated.expected
Log Message:
-----------
[hexagon] Bump the default version to v68 (#132304)
Set the default processor version to v68 when the user does not specify
one in the command line. This includes changes in the LLVM backed and
linker (lld). Since lld normally sets the version based on inputs, this
change will only affect cases when there are no inputs.
Fixes #127558
Commit: 4adefcfb856aa304b7b0a9de1eec1814f3820e83
https://github.com/llvm/llvm-project/commit/4adefcfb856aa304b7b0a9de1eec1814f3820e83
Author: vporpo <vporpodas at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/Analysis/EphemeralValuesCache.h
M llvm/include/llvm/Analysis/InlineCost.h
M llvm/lib/Analysis/EphemeralValuesCache.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Transforms/IPO/Inliner.cpp
M llvm/test/Transforms/Inline/cgscc-incremental-invalidate.ll
M llvm/unittests/Analysis/EphemeralValuesCacheTest.cpp
Log Message:
-----------
[Analysis][EphemeralValuesAnalysis][NFCI] Remove EphemeralValuesCache class (#132454)
This is a follow-up to https://github.com/llvm/llvm-project/pull/130210.
The EphemeralValuesAnalysis pass used to return an EphemeralValuesCache
object which used to hold the ephemeral values and used to provide a
lazy collection of the ephemeral values, and an invalidation using the
`clear()` function.
This patch removes the EphemeralValuesCache class completely and instead
returns the SmallVector containing the ephemeral values.
Commit: 619ba920efc25aebb5e7e9e7a777964588616441
https://github.com/llvm/llvm-project/commit/619ba920efc25aebb5e7e9e7a777964588616441
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_cdb.py
M clang/bindings/python/tests/cindex/test_cursor.py
M clang/bindings/python/tests/cindex/test_index.py
M clang/bindings/python/tests/cindex/test_location.py
M clang/bindings/python/tests/cindex/test_translation_unit.py
M clang/bindings/python/tests/cindex/test_type.py
Log Message:
-----------
[libclang/python] Change all global variables to snake case (#132378)
Commit: 17b5d6b2420ea3f1638b62a3b721c355be533dcd
https://github.com/llvm/llvm-project/commit/17b5d6b2420ea3f1638b62a3b721c355be533dcd
Author: lntue <lntue at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M libc/test/src/__support/CPP/type_traits_test.cpp
Log Message:
-----------
[libc] Temporarily disable the type trait test affected by issue 132494. (#132501)
This test causes clang to crash due to #132494.
Commit: 3840f787a21a66686f5d8bf61877d41f3a65f205
https://github.com/llvm/llvm-project/commit/3840f787a21a66686f5d8bf61877d41f3a65f205
Author: quic_hchandel <quic_hchandel at quicinc.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
A llvm/test/MC/RISCV/xqcisync-invalid.s
A llvm/test/MC/RISCV/xqcisync-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add Qualcomm uC Xqcisync (Sync Delay) extension (#132184)
This extension adds nine instructions, eight for non-memory-mapped
devices synchronization and delay instruction.
The current spec can be found at:
https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.7.0
This patch adds assembler only support.
Co-authored-by: Sudharsan Veeravalli <quic_svs at quicinc.com>
Commit: fe7776eab87b3c79372b2056a6e0dd9ef1c4b10e
https://github.com/llvm/llvm-project/commit/fe7776eab87b3c79372b2056a6e0dd9ef1c4b10e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
R llvm/test/MC/RISCV/xqcisync-invalid.s
R llvm/test/MC/RISCV/xqcisync-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
Revert "[RISCV] Add Qualcomm uC Xqcisync (Sync Delay) extension (#132184)"
This reverts commit 3840f787a21a66686f5d8bf61877d41f3a65f205.
Multiple builtbot failures have been reported:
https://github.com/llvm/llvm-project/pull/132184
Commit: b9180c5cc647af06eadba81a976bf9041a94e203
https://github.com/llvm/llvm-project/commit/b9180c5cc647af06eadba81a976bf9041a94e203
Author: tltao <tony.le.tao at gmail.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.h
Log Message:
-----------
[SystemZ] Move some SystemZTargetStreamer classes to proper file (#132476)
Now that we have a SystemZTargetStreamer file from
https://github.com/llvm/llvm-project/pull/130535, move some
TargetStreamer classes and methods from TargetDesc to the proper file.
---------
Co-authored-by: Tony Tao <tonytao at ca.ibm.com>
Commit: 45270853192db53022ccadf4767999af4fe4e332
https://github.com/llvm/llvm-project/commit/45270853192db53022ccadf4767999af4fe4e332
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/SemaCXX/member-pointer.cpp
M libc/test/src/__support/CPP/type_traits_test.cpp
Log Message:
-----------
[clang] diagnose invalid member pointer class on instantiation (#132516)
Commit: f459cfed7b017ab57b8e825fc0198f89288168a4
https://github.com/llvm/llvm-project/commit/f459cfed7b017ab57b8e825fc0198f89288168a4
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
Log Message:
-----------
[AMDGPU] Avoid repeated hash lookups (NFC) (#132511)
Commit: 597accfea6150e77304427fb97d0c3798178e040
https://github.com/llvm/llvm-project/commit/597accfea6150e77304427fb97d0c3798178e040
Author: Ben Shi <2283975856 at qq.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/lib/CodeGen/Targets/AVR.cpp
M clang/test/CodeGen/avr/argument.c
Log Message:
-----------
[clang][CodeGen][AVR] Fix a crash in AVRABIInfo (#131976)
fixes https://github.com/llvm/llvm-project/issues/131967
Commit: 34f80126e9cc11a82825dd503c28942145dce8c8
https://github.com/llvm/llvm-project/commit/34f80126e9cc11a82825dd503c28942145dce8c8
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
M llvm/test/MC/ARM/symbol-variants.s
Log Message:
-----------
[ARM] Improve STT_TLS tests and remove unsupported (tlsld) specifier
Test that symbols referenced through TLS-specific relocation specifiers
are set STT_TLS. As a minor issue, (tlsldo) does not set STT_TLS yet.
(tlsld) is not a valid specifier.
Commit: e7107973b83b7053f3ba92a40a33a27db0c90529
https://github.com/llvm/llvm-project/commit/e7107973b83b7053f3ba92a40a33a27db0c90529
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
A llvm/test/MC/RISCV/xqcisync-invalid.s
A llvm/test/MC/RISCV/xqcisync-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
Recommit "[RISCV] Add Qualcomm uC Xqcisync (Sync Delay) extension (#132184)" (#132520)
With a minor fix for the build failures.
Original message:
This extension adds nine instructions, eight for non-memory-mapped devices synchronization and delay instruction.
The current spec can be found at:
https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.7.0
This patch adds assembler only support.
Co-authored-by: Sudharsan Veeravalli quic_svs at quicinc.com
Commit: dad7f799b4b7ad85472cebf7e0b433e8067894ae
https://github.com/llvm/llvm-project/commit/dad7f799b4b7ad85472cebf7e0b433e8067894ae
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
M llvm/test/MC/ARM/fdpic.s
M llvm/test/MC/ARM/symbol-variants.s
Log Message:
-----------
[ARM] Set STT_TLS for a few relocation specifiers
Symbols referenced through TLSLDO and FDPIC TLS-specific specifiers
should be set to STT_TLS as well.
Commit: 4b417992dd95060f5815fdfacb08f1c898f85b41
https://github.com/llvm/llvm-project/commit/4b417992dd95060f5815fdfacb08f1c898f85b41
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
M llvm/lib/Target/AArch64/AArch64TargetObjectFile.h
M llvm/lib/Target/ARM/ARMTargetObjectFile.cpp
M llvm/lib/Target/RISCV/RISCVTargetObjectFile.cpp
M llvm/lib/Target/X86/X86TargetObjectFile.cpp
Log Message:
-----------
[CodeGen] Rename PLTRelativeVariantKind. NFC
Migrate away from the deprecated MCSymbolRefExpr::VariantKind.
The name "Specifier" is utilized in a few *MCExpr.
> "Relocation specifier" is clear, aligns with Arm and IBM AIX's documentation, and fits the assembler's role seamlessly.
Commit: 1edefc3ea056ea32984a20eabd848d36d8d43be3
https://github.com/llvm/llvm-project/commit/1edefc3ea056ea32984a20eabd848d36d8d43be3
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/MCExpr.h
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMMCInstLower.cpp
M llvm/lib/Target/ARM/ARMTargetObjectFile.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCExpr.h
M llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
Log Message:
-----------
Move ARM-specific MCSymbolRefExpr::VariantKind to ARMMCExpr::Specifier
Similar to previous migration done for other targets (PowerPC, X86,
etc).
Note: ARMELFObjectWriter::needsRelocateWithSymbol is conservative and
already includes most specifiers.
Commit: d67951694b3c7e918b9a5e6a0e6e346e42d72755
https://github.com/llvm/llvm-project/commit/d67951694b3c7e918b9a5e6a0e6e346e42d72755
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Support overlapping regions in __builtin_memmove (#132523)
Unfortunately, a few circumstances make the implementation here less
than ideal, but we need to handle overlapping regions anyway.
Commit: 1d133420dc512487e2be0e9d86755f2a7c3497a7
https://github.com/llvm/llvm-project/commit/1d133420dc512487e2be0e9d86755f2a7c3497a7
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-21 (Fri, 21 Mar 2025)
Changed paths:
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCExpr.h
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
Log Message:
-----------
[MC] Use FirstTargetSpecifier
Commit: 20b5728b7b1ccc4509a316efb270d46cc9526d69
https://github.com/llvm/llvm-project/commit/20b5728b7b1ccc4509a316efb270d46cc9526d69
Author: Jesse Huang <jesse.huang at sifive.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/test/CodeGen/RISCV/riscv-func-attr-target.c
M clang/test/CodeGen/attr-target-clones-riscv.c
M clang/test/CodeGen/attr-target-version-riscv.c
M clang/test/CodeGenCXX/attr-target-clones-riscv.cpp
M clang/test/CodeGenCXX/attr-target-version-riscv.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/MC/RISCV/attribute-arch.s
M llvm/test/MC/RISCV/attribute.s
M llvm/test/MC/RISCV/option-arch.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Implement the implications of C extension (#132259)
Implement the following implications according to the [Zc
spec](https://github.com/riscvarchive/riscv-code-size-reduction/blob/main/Zc-specification/Zc.adoc#13-c)
> As C defines the same instructions as Zca, Zcf and Zcd, the rule is
that:
> * C always implies Zca
> * C+F implies Zcf (RV32 only)
> * C+D implies Zcd
Commit: 6c8e9a6192a812237415d7d03d5ae234bc244c97
https://github.com/llvm/llvm-project/commit/6c8e9a6192a812237415d7d03d5ae234bc244c97
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode][NFC] Add assert to ptrauth_string_discriminator (#132527)
As pointed out by @shafik, this confuses static analysis and most
probably humans as well. Add an assertion to ensure the given array has
at least one element.
Commit: a27da0a20cbfb9f0c600d53bf2520f068b222f59
https://github.com/llvm/llvm-project/commit/a27da0a20cbfb9f0c600d53bf2520f068b222f59
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
A llvm/test/Bitcode/DW_AT_APPLE_enum_kind.ll
Log Message:
-----------
[llvm][MetadataLoader] Make sure we correctly load DW_APPLE_ENUM_KIND from bitcode (#132374)
This was pointed out in
https://github.com/llvm/llvm-project/pull/124752#issuecomment-2730052773
There was no test that roundtrips this attribute through LLVM bitcode,
so this was never caught.
Commit: 2f2100c879a8c1644e42fb191e88773a77fe886a
https://github.com/llvm/llvm-project/commit/2f2100c879a8c1644e42fb191e88773a77fe886a
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-constant-ops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory.ll
Log Message:
-----------
[LV] Add additional tests for #106441.
Further increase test coverage for
https://github.com/llvm/llvm-project/pull/106441
Also regenerate checks with -filter-out-after.
Commit: dd97324f119af515944b7ec79fe627cfa70d4a2a
https://github.com/llvm/llvm-project/commit/dd97324f119af515944b7ec79fe627cfa70d4a2a
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M libcxx/utils/ci/Dockerfile
M libcxx/utils/ci/docker-compose.yml
Log Message:
-----------
[libc++][CI] Adds GCC trunk image. (#132271)
As discussed during the last monthly meeting we want to be able to test
the GCC development version in our CI, but we don't want to commit to
support this compiler version.
This adds the image to the CI Docker image. At the moment GCC-15 will
not pass the CI. Having it in the Docker image makes it possible to
validate fixes.
---------
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Co-authored-by: Hristo Hristov <hghristov.rmm at gmail.com>
Commit: 1fdd8cb91e88cf9e71701bd286e2dee98e48540f
https://github.com/llvm/llvm-project/commit/1fdd8cb91e88cf9e71701bd286e2dee98e48540f
Author: Martin Storsjö <martin at martin.st>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/test/Transforms/LoopIdiom/strlen-not-emittable.ll
M llvm/test/Transforms/LoopIdiom/strlen.ll
M llvm/test/Transforms/LoopIdiom/wcslen16.ll
M llvm/test/Transforms/LoopIdiom/wcslen32.ll
Log Message:
-----------
Revert "[Transform] Clean up strlen loop idiom (#132421)"
This reverts commit 7c52886700a5a70d873400ec022a99d7dce8b03b.
Reverting this as I have to revert another preceding commit,
ac9049df7e62e2ca4dc5d103593b51639b5715e3.
Commit: 2a4522229c7b744dcd268a790ba61e4eb2bfa315
https://github.com/llvm/llvm-project/commit/2a4522229c7b744dcd268a790ba61e4eb2bfa315
Author: Martin Storsjö <martin at martin.st>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/LoopIdiomRecognize.h
M llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
R llvm/test/Transforms/LoopIdiom/strlen-not-emittable.ll
R llvm/test/Transforms/LoopIdiom/strlen.ll
R llvm/test/Transforms/LoopIdiom/wcslen16.ll
R llvm/test/Transforms/LoopIdiom/wcslen32.ll
Log Message:
-----------
Revert "Reland "[Transforms] LoopIdiomRecognize recognize strlen and wcslen (#108985)" (#131412)"
This reverts commit ac9049df7e62e2ca4dc5d103593b51639b5715e3.
This change broke Wine (causing it to hang on startup), see
https://github.com/llvm/llvm-project/pull/108985 for discussion.
Commit: 2909c420f6b1919989819d91d5194d5d50f3910d
https://github.com/llvm/llvm-project/commit/2909c420f6b1919989819d91d5194d5d50f3910d
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-starts-ends-with.rst
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp
Log Message:
-----------
[clang-tidy] modernize-use-starts-ends-with: fix false positives on `find` and `rfind` (#129564)
Also document cases with two or three arguments (matching default arguments)
this check matches.
Closes https://github.com/llvm/llvm-project/issues/129498.
Commit: fbaf3b895c028c055290588221cde3f5146cd661
https://github.com/llvm/llvm-project/commit/fbaf3b895c028c055290588221cde3f5146cd661
Author: Jesse Huang <jesse.huang at sifive.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M lld/test/ELF/lto/riscv-attributes.ll
M lld/test/ELF/riscv-attributes.s
Log Message:
-----------
[RISCV] Update lld tests for the C ext implication change (#132541)
Commit: f138e36d522ea5b7d6e8cb614246cc457b696df6
https://github.com/llvm/llvm-project/commit/f138e36d522ea5b7d6e8cb614246cc457b696df6
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/test/CodeGen/RISCV/rvv/stores-of-loads-merging.ll
Log Message:
-----------
[SelectionDAG][RISCV] Avoid store merging across function calls (#130430)
This patch improves DAGCombiner's handling of potential store merges by
detecting function calls between loads and stores. When a function call
exists in the chain between a load and its corresponding store, we avoid
merging these stores if the spilling is unprofitable.
We had to implement a hook on TLI, since TTI is unavailable in
DAGCombine. Currently, it's only enabled for riscv.
This is the DAG equivalent of PR #129258
Commit: 51aab96ebfc309caef9f98841a8b14848e6c5077
https://github.com/llvm/llvm-project/commit/51aab96ebfc309caef9f98841a8b14848e6c5077
Author: Stephan T. Lavavej <stl at nuwen.net>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M libcxx/test/std/time/time.clock/time.clock.gps/types.compile.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.tai/types.compile.pass.cpp
M libcxx/test/std/time/time.syn/formatter.tai_time.pass.cpp
Log Message:
-----------
[libc++][test] Small fixes for time tests (#132532)
* Fix copy-paste damage in `formatter.tai_time.pass.cpp`.
+ Comparing the `#if` to the `#else` case, it's clear that this
half-copied check should be removed.
* Mark `is_steady` as `[[maybe_unused]]`.
+ It's only used within `LIBCPP_STATIC_ASSERT`.
Commit: c51d396f4dec65bac24e00ace3f5ce5582d2c699
https://github.com/llvm/llvm-project/commit/c51d396f4dec65bac24e00ace3f5ce5582d2c699
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Descriptor.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Program.h
M clang/test/AST/ByteCode/placement-new.cpp
Log Message:
-----------
[clang][bytecode] Fix __builtin_memmove type diagnostics (#132544)
Set the source type when allocating primitives so we can later retrieve
it.
Commit: 2186199d085b80fe5d254148c0e1f99412da9026
https://github.com/llvm/llvm-project/commit/2186199d085b80fe5d254148c0e1f99412da9026
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/debugloc.ll
Log Message:
-----------
[LV] Add test showing missing debug location on VPScalarIVStepsRecipe.
Commit: 032ad590d6bac76965fac17b9f2ce41e076a5a0a
https://github.com/llvm/llvm-project/commit/032ad590d6bac76965fac17b9f2ce41e076a5a0a
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/SemaCXX/ctad.cpp
Log Message:
-----------
[Clang] Fix various bugs in alias CTAD transform (#132061)
Commit: c5d4dfb291af1f9c099c25b78dd2ea0a6496a45f
https://github.com/llvm/llvm-project/commit/c5d4dfb291af1f9c099c25b78dd2ea0a6496a45f
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
Log Message:
-----------
[Clang][NFC] Use MarkUsedTemplateParameters in building alias CTAD guides (#132369)
It turns out that TemplateParamsReferencedInTemplateArgumentList() and
MarkUsedTemplateParameters() have the similar goal, so let's drop the
hand-written ASTVisitor.
Commit: c6c394634c46156313cfbcaf87678f25e0245dbe
https://github.com/llvm/llvm-project/commit/c6c394634c46156313cfbcaf87678f25e0245dbe
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Driver/Multilib.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Serialization/ASTReaderInternals.h
M clang/lib/Serialization/MultiOnDiskHashTable.h
M clang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp
M clang/tools/libclang/Indexing.cpp
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
M clang/utils/TableGen/NeonEmitter.cpp
Log Message:
-----------
[clang] Use *Set::insert_range (NFC) (#132507)
DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range. This patch replaces:
Dest.insert(Src.begin(), Src.end());
with:
Dest.insert_range(Src);
This patch does not touch custom begin like succ_begin for now.
Commit: 1b189cab5e582a183f6946dcb3e20913add58476
https://github.com/llvm/llvm-project/commit/1b189cab5e582a183f6946dcb3e20913add58476
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/TailDuplicator.cpp
M llvm/lib/IR/SafepointIRVerifier.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/VE/VEISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
Log Message:
-----------
[llvm] Use *Set::insert_range (NFC) (#132509)
DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range. This patch uses insert_range in
conjunction with llvm::{predecessors,successors} and
MachineBasicBlock::{predecessors,successors}.
Commit: 2fa59b3371e6d749436d56057c54bcbf89c6995b
https://github.com/llvm/llvm-project/commit/2fa59b3371e6d749436d56057c54bcbf89c6995b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
Log Message:
-----------
[Analysis] Avoid repeated hash lookups (NFC) (#132512)
Commit: cb729be11cbfb4f0f180e683e2c2d2a3750d4374
https://github.com/llvm/llvm-project/commit/cb729be11cbfb4f0f180e683e2c2d2a3750d4374
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/GCMetadata.cpp
Log Message:
-----------
[CodeGen] Avoid repeated hash lookups (NFC) (#132513)
Commit: d8d2e7c4914ca03e68546898ef37ba3ed038b8b9
https://github.com/llvm/llvm-project/commit/d8d2e7c4914ca03e68546898ef37ba3ed038b8b9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
Log Message:
-----------
[PowerPC] Avoid repeated hash lookups (NFC) (#132514)
Commit: 547181005a5e36efcc500ef45d67b6c200a7f87e
https://github.com/llvm/llvm-project/commit/547181005a5e36efcc500ef45d67b6c200a7f87e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVRegularizer.cpp
Log Message:
-----------
[SPIRV] Avoid repeated hash lookups (NFC) (#132515)
Commit: 2b69a499407a2bfa55f20486e7810b91f20ea910
https://github.com/llvm/llvm-project/commit/2b69a499407a2bfa55f20486e7810b91f20ea910
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Support/SuffixTree.cpp
Log Message:
-----------
[Support] Avoid repeated hash lookups (NFC) (#132517)
Commit: 5999be0f4770e9dd0f88ee9051a37119c8f5a1e4
https://github.com/llvm/llvm-project/commit/5999be0f4770e9dd0f88ee9051a37119c8f5a1e4
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/test/SemaCXX/member-pointer.cpp
Log Message:
-----------
[clang] fix RecursiveASTVisitor traversal from type to decl (#132551)
Commit: 5fc891b965223d66b552397e49fb4b09d781d5da
https://github.com/llvm/llvm-project/commit/5fc891b965223d66b552397e49fb4b09d781d5da
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode][NFC] Use getElemType() in __builtin_memchr as well (#132550)
For consistency.
Commit: 34631744af05ce59a94e736eb7feb4ac69677fbe
https://github.com/llvm/llvm-project/commit/34631744af05ce59a94e736eb7feb4ac69677fbe
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Get DataLayout from SE in VPExpandSCEVRecipe::execute (NFC)
This doesn't rely on State.CFG.
Commit: 868c89ff0e0ef09ac504873cb9bab8197f5fca2d
https://github.com/llvm/llvm-project/commit/868c89ff0e0ef09ac504873cb9bab8197f5fca2d
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/test/SemaCXX/ctad.cpp
Log Message:
-----------
[Clang] Fix a bot failure after 032ad590 (#132555)
See
https://github.com/llvm/llvm-project/pull/132061?notification_referrer_id=NT_kwDOBv04MLUxNTM5NjQwOTM5MToxMTcyNTgyODg#issuecomment-2745313527
Commit: ccc18ca1479dee73b0fdafa75d9403c50c17ee28
https://github.com/llvm/llvm-project/commit/ccc18ca1479dee73b0fdafa75d9403c50c17ee28
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 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/RISCVMCAsmInfo.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
M llvm/lib/Target/RISCV/RISCVTargetObjectFile.cpp
Log Message:
-----------
[RISCV] Move VK_GOTPCREL and VK_PLT to RISCVMCExpr::Specifier
to migrate away from the deprecated MCSymbolRefExpr::VariantKind. In the
future, @GOTPCREL and @PLT in data directives should be encoded as part
of RISCVMCExpr instead of MCSymbolRefExpr.
Commit: db7475a770c360a42560aa01859d5dcbb808ade8
https://github.com/llvm/llvm-project/commit/db7475a770c360a42560aa01859d5dcbb808ade8
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/test/AST/ByteCode/literals.cpp
Log Message:
-----------
[clang][bytecode] Ignore overflow in unary operators if requested (#132557)
Add PreInc and PreDec ops for this purpose and ignore the overflow if
UnaryOperator::canOverflow() returns false.
Commit: 973ea045aa89febc533cea165e78686e976b3805
https://github.com/llvm/llvm-project/commit/973ea045aa89febc533cea165e78686e976b3805
Author: Vasileios Porpodas <vporpodas at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/include/llvm/Analysis/EphemeralValuesCache.h
M llvm/include/llvm/Analysis/InlineCost.h
M llvm/lib/Analysis/EphemeralValuesCache.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Transforms/IPO/Inliner.cpp
M llvm/test/Transforms/Inline/cgscc-incremental-invalidate.ll
M llvm/unittests/Analysis/EphemeralValuesCacheTest.cpp
Log Message:
-----------
Revert "[Analysis][EphemeralValuesAnalysis][NFCI] Remove EphemeralValuesCache class (#132454)"
This reverts commit 4adefcfb856aa304b7b0a9de1eec1814f3820e83.
Commit: fb44c54d656135a306e403083b5c1eaae9078757
https://github.com/llvm/llvm-project/commit/fb44c54d656135a306e403083b5c1eaae9078757
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/test/CodeGen/RISCV/features-info.ll
Log Message:
-----------
[RISCV] Add missing space to optimized-nf*-segment-load-store description. NFC (#132531)
Commit: adcaf1769dea988e13615ef088ff22629966de00
https://github.com/llvm/llvm-project/commit/adcaf1769dea988e13615ef088ff22629966de00
Author: Mohamed Emad <73320969+hulxv at users.noreply.github.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M libc/docs/uefi/index.rst
Log Message:
-----------
[libc] [NFC] fix type in `docs/uefi/index.rst` (#132553)
Closes #132537
Commit: 6e4e88d4cccb4903dff4144cd86c4f966e4ae09c
https://github.com/llvm/llvm-project/commit/6e4e88d4cccb4903dff4144cd86c4f966e4ae09c
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
A llvm/test/MC/RISCV/data-directive-specifier.s
R llvm/test/MC/RISCV/elf-reloc-got32-pcrel.s
R llvm/test/MC/RISCV/elf-reloc-plt32.s
Log Message:
-----------
[test] Improve R_RISCV_PLT32 and R_RISCV_GOT32_PCREL tests
Commit: f3e8e805630e5092458a80e00ba83f7ad45e2302
https://github.com/llvm/llvm-project/commit/f3e8e805630e5092458a80e00ba83f7ad45e2302
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[llvm] Construct SmallVector with ArrayRef (NFC) (#132560)
Commit: 5d540430069795fe149f953bc1f892cf3e77b2ee
https://github.com/llvm/llvm-project/commit/5d540430069795fe149f953bc1f892cf3e77b2ee
Author: Rynco Maekawa <lynzrand at outlook.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/bindings/ocaml/llvm/llvm.ml
M llvm/bindings/ocaml/llvm/llvm.mli
M llvm/bindings/ocaml/llvm/llvm_ocaml.c
M llvm/test/Bindings/OCaml/core.ml
Log Message:
-----------
[bindings] Add `global_set_metadata` for function debuginfo
Reviewed by: Alan Hu <ahulambda at gmail.com>
Commit: 0d3ba087f706b12a1b091ea5bc5f48876e1ab67c
https://github.com/llvm/llvm-project/commit/0d3ba087f706b12a1b091ea5bc5f48876e1ab67c
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
Log Message:
-----------
[LV] Move IV bypass value creation out of ILV (NFC)
createInductionAdditionalBypassValues is only used for epilogue
vectorization now. Move it out of ILV, which means we do not have to
thread through ExpandedSCEVs and also don't have to track the bypass
values in ILV. Instead, directly create them if needed after executing
the epilogue plan. This moves more the epilogue specific logic out of
the generic executePlan.
Commit: dfa665f19c52d98b8d833a8e9073427ba5641b19
https://github.com/llvm/llvm-project/commit/dfa665f19c52d98b8d833a8e9073427ba5641b19
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll
Log Message:
-----------
[VPlan] Add transformation to narrow interleave groups. (#106441)
This patch adds a new narrowInterleaveGroups transfrom, which tries
convert a plan with interleave groups with VF elements to a plan that
instead replaces the interleave groups with wide loads and stores
processing VF elements.
This effectively is a very simple form of loop-aware SLP, where we
use interleave groups to identify candidates.
This initial version is quite restricted and hopefully serves as a
starting point for how to best model those kinds of transforms.
Depends on https://github.com/llvm/llvm-project/pull/106431.
Fixes https://github.com/llvm/llvm-project/issues/82936.
PR: https://github.com/llvm/llvm-project/pull/106441
Commit: 616737c386776b0cfbda888a4d52e6036ccf1af8
https://github.com/llvm/llvm-project/commit/616737c386776b0cfbda888a4d52e6036ccf1af8
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/utils/TableGen/CompressInstEmitter.cpp
Log Message:
-----------
[TableGen] Use std:vector instead of SmallVector for the list of CompressPatterns. NFC
There are very likely more than 4 compress patterns.
Commit: f9898cf6a826c080547bd82200a197991d23cdda
https://github.com/llvm/llvm-project/commit/f9898cf6a826c080547bd82200a197991d23cdda
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/test/MC/SystemZ/fixups.s
Log Message:
-----------
[SystemZ,test] Test section symbol and STT_TLS adjustment
Commit: 41b572b99cd5f222330effa323af9c4da8d73e10
https://github.com/llvm/llvm-project/commit/41b572b99cd5f222330effa323af9c4da8d73e10
Author: Lang Hames <lhames at gmail.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/examples/OrcV2Examples/LLJITWithLazyReexports/LLJITWithLazyReexports.cpp
Log Message:
-----------
[ORC][examples] Simplify example -- LLJIT already has a mangleAndIntern method.
We don't need a separate MangleAndInterner here any more.
Commit: f3f0b99b1c7520b065cf79f0e0901fc8d2c1d4ec
https://github.com/llvm/llvm-project/commit/f3f0b99b1c7520b065cf79f0e0901fc8d2c1d4ec
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/M68k/M68kISelLowering.cpp
M llvm/lib/Target/M68k/M68kMCInstLower.cpp
M llvm/lib/Target/M68k/MCTargetDesc/CMakeLists.txt
M llvm/lib/Target/M68k/MCTargetDesc/M68kELFObjectWriter.cpp
M llvm/lib/Target/M68k/MCTargetDesc/M68kMCAsmInfo.cpp
A llvm/lib/Target/M68k/MCTargetDesc/M68kMCExpr.cpp
A llvm/lib/Target/M68k/MCTargetDesc/M68kMCExpr.h
Log Message:
-----------
[M68k] Add stub M68kMCExpr and migrate away from MCSymbolRefExpr::VariantKind
Similar to previous migration done for other targets (PowerPC, X86, ARM,
etc).
In the future, relocation specifiers should be encoded as part of
M68kMCExpr instead of MCSymbolRefExpr.
Commit: f73da649cb5742963a641cb21a2dde4c1beb908a
https://github.com/llvm/llvm-project/commit/f73da649cb5742963a641cb21a2dde4c1beb908a
Author: Daniel Chen <cdchen at ca.ibm.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M compiler-rt/cmake/base-config-ix.cmake
M llvm/CMakeLists.txt
M runtimes/CMakeLists.txt
Log Message:
-----------
Revert "[compiler-rt] Disable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON on AIX. (#131200)" (#132574)
…
This reverts commit 8e773d8a10cc996fbbe834f59ed9f7044c3539e0.
Commit: b19b6d9fab0bd9a1650ea1a1d631fc31d0f7fbae
https://github.com/llvm/llvm-project/commit/b19b6d9fab0bd9a1650ea1a1d631fc31d0f7fbae
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/MCExpr.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZInstPrinterCommon.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCExpr.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCExpr.h
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
M llvm/lib/Target/SystemZ/SystemZMCInstLower.cpp
M llvm/lib/Target/SystemZ/SystemZMCInstLower.h
M llvm/lib/Target/SystemZ/SystemZTargetObjectFile.cpp
Log Message:
-----------
Move SystemZ-specific MCSymbolRefExpr::VariantKind to SystemZMCExpr::Specifier
Similar to previous migration done for other targets (PowerPC, X86, ARM,
etc). Switch from the confusing VariantKind to Specifier, which aligns
with Arm and IBM AIX's documentation.
In addition, rename *MCExpr::getKind, which confusingly shadows the base class getKind.
In the future, relocation specifiers should be encoded as part of
SystemZMCExpr instead of MCSymbolRefExpr.
Commit: 4379d22013185221e09ec0c2cbbaf006323f64b5
https://github.com/llvm/llvm-project/commit/4379d22013185221e09ec0c2cbbaf006323f64b5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseSet.h
M llvm/include/llvm/ADT/STLForwardCompat.h
M llvm/unittests/ADT/DenseSetTest.cpp
Log Message:
-----------
[ADT] Add DenseSet(llvm::from_t, Range) (#131832)
This patch adds a constructor of the form:
DenseSet Set(llvm::from_range, Range)
while forward-porting std::from_range from c++23.
Commit: 417390d77d6f828a2f2341e0565784c677ef13ab
https://github.com/llvm/llvm-project/commit/417390d77d6f828a2f2341e0565784c677ef13ab
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/M68k/MCTargetDesc/M68kELFObjectWriter.cpp
M llvm/lib/Target/M68k/MCTargetDesc/M68kMCExpr.h
A llvm/test/MC/M68k/Relocations/tls.s
Log Message:
-----------
[M68k] Set STT_TLS for TLS relocations
Commit: ee3e17d67f6ce37a4a78d023a361c10d7398e15f
https://github.com/llvm/llvm-project/commit/ee3e17d67f6ce37a4a78d023a361c10d7398e15f
Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/headers/math/index.rst
M libc/include/math.yaml
M libc/src/math/CMakeLists.txt
A libc/src/math/acoshf16.h
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/acoshf16.cpp
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/acoshf16_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/acoshf16_test.cpp
Log Message:
-----------
[libc][math][c23] Add acoshf16 C23 math function. (#130588)
Implementation of acoshf16 function for 16-bit inputs.
Commit: 445837a3630520e9292b84b6b8dc0f86d2eccbae
https://github.com/llvm/llvm-project/commit/445837a3630520e9292b84b6b8dc0f86d2eccbae
Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/headers/math/index.rst
M libc/include/math.yaml
M libc/src/math/CMakeLists.txt
A libc/src/math/fmaf16.h
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/fmaf16.cpp
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/FmaTest.h
A libc/test/src/math/fmaf16_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
M libc/test/src/math/smoke/FmaTest.h
A libc/test/src/math/smoke/fmaf16_test.cpp
M libc/utils/MPFRWrapper/MPFRUtils.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel
Log Message:
-----------
[libc][math][c23] Add fmaf16 C23 math function. (#130757)
Implementation of fmaf16 function for 16-bit inputs.
Commit: 8ec96cc8866769b6bd17648a922ad1c0b9a39e69
https://github.com/llvm/llvm-project/commit/8ec96cc8866769b6bd17648a922ad1c0b9a39e69
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.h
Log Message:
-----------
[LoongArch] Move STT_TLS setting from fixELFSymbolsInTLSFixups to getRelocType
The legacy generic code uses `ELFObjectWriter::fixSymbolsInTLSFixups` to
set `STT_TLS` (and use an unnecessary expression walk). The better way
is to do this in `getRelocType`, which I have done for AArch64, PowerPC,
RISC-V, and X86.
Commit: 0a0f691af6468372d2f5d31b83317fcc263e89d4
https://github.com/llvm/llvm-project/commit/0a0f691af6468372d2f5d31b83317fcc263e89d4
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCExpr.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCExpr.h
Log Message:
-----------
[Hexagon] Move STT_TLS setting from fixELFSymbolsInTLSFixups to getRelocType
The legacy generic code uses `ELFObjectWriter::fixSymbolsInTLSFixups` to
set `STT_TLS` (and use an unnecessary expression walk). The better way
is to do this in `getRelocType`, which I have done for AArch64, PowerPC,
RISC-V, and X86.
Commit: 75f5a4f0dc7d96134cca86543ef3f86ef218ce77
https://github.com/llvm/llvm-project/commit/75f5a4f0dc7d96134cca86543ef3f86ef218ce77
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/VE/MCTargetDesc/VEELFObjectWriter.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.h
Log Message:
-----------
[VE] Move STT_TLS setting from fixELFSymbolsInTLSFixups to getRelocType
The legacy generic code uses `ELFObjectWriter::fixSymbolsInTLSFixups` to
set `STT_TLS` (and use an unnecessary expression walk). The better way
is to do this in `getRelocType`, which I have done for AArch64, PowerPC,
RISC-V, and X86.
Commit: 8553fafff0f3ee9576fe6ff02d63f6e3197ca010
https://github.com/llvm/llvm-project/commit/8553fafff0f3ee9576fe6ff02d63f6e3197ca010
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/MCELFObjectWriter.h
M llvm/lib/MC/ELFObjectWriter.cpp
Log Message:
-----------
[MC] Remove ELFObjectWriter::fixSymbolsInTLSFixups
Finish the migration started by
eea7d32bd262bb5f61790c42ebaa147aa26c3979.
STT_TLS setting has been moved to backend getRelocType.
75f5a4f0dc7d96134cca86543ef3f86ef218ce77 migrated the last target, VE.
Commit: ebcf1de065266c4c1b3f1a5b48ad7ced02e153c1
https://github.com/llvm/llvm-project/commit/ebcf1de065266c4c1b3f1a5b48ad7ced02e153c1
Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
Log Message:
-----------
[libc][math] Disable acoshf16 Test on AArch64 to resolve test failures. (#132580)
Commit: 88601d97a4b33ff157d3ffe8a9026c5e8162851b
https://github.com/llvm/llvm-project/commit/88601d97a4b33ff157d3ffe8a9026c5e8162851b
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp
M llvm/lib/Target/CSKY/CSKYAsmPrinter.cpp
M llvm/lib/Target/CSKY/CSKYMCInstLower.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCCodeEmitter.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.h
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYTargetStreamer.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYTargetStreamer.h
Log Message:
-----------
[CSKY] Rename VK_CSKY_ to VK_ and VariantKind to Specifier
Similar to the simplification for RISCV and other targets.
Commit: beab1a6ddebafdba906bf222b628033a9b8f6e3d
https://github.com/llvm/llvm-project/commit/beab1a6ddebafdba906bf222b628033a9b8f6e3d
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCAsmInfo.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.h
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYTargetStreamer.cpp
Log Message:
-----------
[CSKY] Migrate away from legacy MCSymbolRefExpr::VariantKind
Commit: fabd71e6c23a58f1feafba5d7c85414f96a38ab0
https://github.com/llvm/llvm-project/commit/fabd71e6c23a58f1feafba5d7c85414f96a38ab0
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
A llvm/test/MC/CSKY/relocation-specifier.s
Log Message:
-----------
[CSKY] STT_TLS
Commit: 912579f428bd3d3d42cdb39155de911524065eeb
https://github.com/llvm/llvm-project/commit/912579f428bd3d3d42cdb39155de911524065eeb
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
M llvm/test/MC/CSKY/relocation-specifier.s
Log Message:
-----------
[CSKY,test] Test section symbol and STT_TLS adjustment
Commit: 441c9a9273c5d040f218986bf301c8a5c4d4c011
https://github.com/llvm/llvm-project/commit/441c9a9273c5d040f218986bf301c8a5c4d4c011
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/MCExpr.h
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.h
Log Message:
-----------
[MC] Delete deprecated fixELFSymbolsInTLSFixups
In-tree targets have been updated to set STT_TLS in derived
MCELFObjectTargetWriter::getRelocType functions.
Commit: 00cb966209955878cee903068333d4d2d4f7b259
https://github.com/llvm/llvm-project/commit/00cb966209955878cee903068333d4d2d4f7b259
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M lld/ELF/LinkerScript.cpp
M lld/wasm/Writer.cpp
Log Message:
-----------
[lld] Use *Set::insert_range (NFC) (#132590)
DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range. This patch replaces:
Dest.insert(Src.begin(), Src.end());
with:
Dest.insert_range(Src);
Commit: fae34938f6bb1aa1f18d6e285c50f05ef04b021e
https://github.com/llvm/llvm-project/commit/fae34938f6bb1aa1f18d6e285c50f05ef04b021e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/IR/Type.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[llvm] Use *Set::insert_range (NFC) (#132591)
DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range. This patch uses insert_range with
iterator ranges. For each case, I've verified that foos is defined as
make_range(foo_begin(), foo_end()) or in a similar manner.
Commit: ad8d5495056f8ec23ab1f0c60ffdd6358605e1ec
https://github.com/llvm/llvm-project/commit/ad8d5495056f8ec23ab1f0c60ffdd6358605e1ec
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Transforms/IPO/SampleProfile.cpp
Log Message:
-----------
[IPO] Avoid repeated hash lookups (NFC) (#132588)
Commit: b4061a5a80a37ed5c500b2f0ef25e0328e5b60a8
https://github.com/llvm/llvm-project/commit/b4061a5a80a37ed5c500b2f0ef25e0328e5b60a8
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSetWavePriority.cpp
Log Message:
-----------
[AMDGPU] Avoid repeated hash lookups (NFC) (#132583)
Commit: 112277eeafafb5ee1c77ab92334cf351d2b73fdb
https://github.com/llvm/llvm-project/commit/112277eeafafb5ee1c77ab92334cf351d2b73fdb
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-22 (Sat, 22 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/features-info.ll
Log Message:
-----------
[RISCV] Add missing features to features-info.ll. NFC (#132530)
Use CHECK-NEXT so we can't forget any in the future.
Commit: c440563da724cbf60c5cdb1cd7c61a21aec04145
https://github.com/llvm/llvm-project/commit/c440563da724cbf60c5cdb1cd7c61a21aec04145
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCCodeEmitter.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.cpp
M llvm/test/MC/CSKY/relocation-specifier.s
Log Message:
-----------
[CSKY] Fix CSKYMCCodeEmitter::getTargetFixup and set STT_TLS for TLS relocation specifiers
Commit: 4a7643400c44db434983c172d2329bf31679e8fa
https://github.com/llvm/llvm-project/commit/4a7643400c44db434983c172d2329bf31679e8fa
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M clang-tools-extra/clang-move/Move.cpp
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/clangd/unittests/TestIndex.cpp
Log Message:
-----------
[clang-tools-extra] Use *Set::insert_range (NFC) (#132589)
DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range. This patch replaces:
Dest.insert(Src.begin(), Src.end());
with:
Dest.insert_range(Src);
Commit: 2fe75856865e20633da33f6b526e47367a035152
https://github.com/llvm/llvm-project/commit/2fe75856865e20633da33f6b526e47367a035152
Author: flovent <144676429+flovent at users.noreply.github.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/MismatchedIteratorChecker.cpp
M clang/test/Analysis/Inputs/system-header-simulator-cxx.h
M clang/test/Analysis/mismatched-iterator.cpp
Log Message:
-----------
[clang][analyzer] Improve the modeling of insert in MismatchedIteratorChecker (#132596)
Fixes #132010
Associative containers in STL has an unique `insert` overload member
function comparing to un-associative
containers(https://en.cppreference.com/w/cpp/container/unordered_set/insert):
```
template< class InputIt >
void insert( InputIt first, InputIt last );
```
Add support for this `insert` overload in `MismatchedIteratorChecker`,
verify if `first` and `last` belongs to the same container in this case.
Commit: c482b8faeace855332a8c070cffaf3d0732cc79e
https://github.com/llvm/llvm-project/commit/c482b8faeace855332a8c070cffaf3d0732cc79e
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/pr45259.ll
M llvm/test/Transforms/LoopVectorize/vplan-predicate-switch.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-before-execute.ll
Log Message:
-----------
[VPlan] Only execute VPExpandSCEVRecipes once and remove them (NFC).
Instead of executing the whole entry VPIRBB twice, first only execute
the VPExpandSCEVRecipes and replace their uses with the expanded
VPValue, which will be a live-in. This allows removing special logic in
VPExpandSCEVRecipe to support executing twice and allows moving the
ExpandedSCEVs map out of VPTransformState.
It will also allow adding other recipes to the entry VPBB in the future.
Commit: bcd08f4d2cf660026a965e11a6a4c9845bf44d41
https://github.com/llvm/llvm-project/commit/bcd08f4d2cf660026a965e11a6a4c9845bf44d41
Author: Letu Ren <fantasquex at gmail.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
Log Message:
-----------
[mlir][llvmir] Add SameOperandsAndResultType trait to LLVM_CountZerosIntrOp (#131133)
According to https://llvm.org/docs/LangRef.html#llvm-ctlz-intrinsic and
https://llvm.org/docs/LangRef.html#llvm-cttz-intrinsic, The return type
of `llvm.intr.ctlz` and `llvm.intr.cttz` must match the first argument
type.
Commit: cfd53ffb44f5d3c438c909b2bc9ae5604f452f39
https://github.com/llvm/llvm-project/commit/cfd53ffb44f5d3c438c909b2bc9ae5604f452f39
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
Log Message:
-----------
[InstCombine] Use MapVector for SourceAggregates. (#132564)
foldAggregateConstructionIntoAggregateReuse iterates over the entries of
SourceAggregates and the order of inserted instructions depends on the
order of the iterator. Using a regular DenseMap can lead to
non-deterministic value naming/numbering.
I don't think it can actually impact the generated binary, but it makes
diffing IR more difficult.
PR: https://github.com/llvm/llvm-project/pull/132564
Commit: c4caf949aa934a219e84d4ba0530bd535e698cdb
https://github.com/llvm/llvm-project/commit/c4caf949aa934a219e84d4ba0530bd535e698cdb
Author: Jonathan Cohen <joncoh at apple.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineCombinerPattern.h
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.h
A llvm/test/CodeGen/AArch64/aarch64-reassociate-accumulators-sve.ll
A llvm/test/CodeGen/AArch64/aarch64-reassociate-accumulators.ll
A llvm/test/CodeGen/AArch64/machine-combiner-reassociate-accumulators.mir
Log Message:
-----------
[AArch64][MachineCombiner] Recombine long chains of accumulation instructions into a tree to increase ILP (#126060)
This pattern shows up often in media libraries. The optimization should only
kick in for O3. Currently only supports a single family of accumulation
instructions, but can easily be expanded to support additional
instructions in the future.
Commit: 7bda9caa4981bf8c378f2c721e4e1b172b0e906c
https://github.com/llvm/llvm-project/commit/7bda9caa4981bf8c378f2c721e4e1b172b0e906c
Author: Jonathan Cohen <joncoh at apple.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineCombinerPattern.h
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.h
R llvm/test/CodeGen/AArch64/aarch64-reassociate-accumulators-sve.ll
R llvm/test/CodeGen/AArch64/aarch64-reassociate-accumulators.ll
R llvm/test/CodeGen/AArch64/machine-combiner-reassociate-accumulators.mir
Log Message:
-----------
Revert "[AArch64][MachineCombiner] Recombine long chains of accumulation instructions into a tree to increase ILP (#126060) (#132607)
This reverts commit c4caf949aa934a219e84d4ba0530bd535e698cdb.
Commit: 81d7eef13453f21303acfba773d0903b27ad754b
https://github.com/llvm/llvm-project/commit/81d7eef13453f21303acfba773d0903b27ad754b
Author: Sandeep Dasgupta <sdasgup at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M mlir/include/mlir-c/Dialect/Quant.h
M mlir/include/mlir/Dialect/Quant/IR/QuantBase.td
M mlir/include/mlir/Dialect/Quant/IR/QuantDialectBytecode.td
M mlir/include/mlir/Dialect/Quant/IR/QuantTypes.h
M mlir/include/mlir/Dialect/Quant/Transforms/Passes.td
M mlir/lib/Bindings/Python/DialectQuant.cpp
M mlir/lib/CAPI/Dialect/Quant.cpp
M mlir/lib/Dialect/Quant/IR/QuantDialectBytecode.cpp
M mlir/lib/Dialect/Quant/IR/QuantOps.cpp
M mlir/lib/Dialect/Quant/IR/QuantTypes.cpp
M mlir/lib/Dialect/Quant/IR/TypeDetail.h
M mlir/lib/Dialect/Quant/IR/TypeParser.cpp
M mlir/lib/Dialect/Quant/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Quant/Transforms/LowerQuantOps.cpp
A mlir/lib/Dialect/Quant/Transforms/NormalizeQuantTypes.cpp
M mlir/python/mlir/_mlir_libs/_mlir/dialects/quant.pyi
M mlir/test/CAPI/quant.c
M mlir/test/Dialect/Quant/Bytecode/types.mlir
M mlir/test/Dialect/Quant/invalid.mlir
M mlir/test/Dialect/Quant/lower-quant-ops.mlir
A mlir/test/Dialect/Quant/normalize-quant-types.mlir
M mlir/test/Dialect/Quant/ops.mlir
M mlir/test/Dialect/Quant/parse-uniform-invalid.mlir
M mlir/test/Dialect/Quant/parse-uniform.mlir
M mlir/test/python/dialects/quant.py
Log Message:
-----------
Sub-channel quantized type implementation (#120172)
This is an implementation for [RFC: Supporting Sub-Channel Quantization
in
MLIR](https://discourse.llvm.org/t/rfc-supporting-sub-channel-quantization-in-mlir/82694).
In order to make the review process easier, the PR has been divided into
the following commit labels:
1. **Add implementation for sub-channel type:** Includes the class
design for `UniformQuantizedSubChannelType`, printer/parser and bytecode
read/write support. The existing types (per-tensor and per-axis) are
unaltered.
2. **Add implementation for sub-channel type:** Lowering of
`quant.qcast` and `quant.dcast` operations to Linalg operations.
3. **Adding C/Python Apis:** We first define he C-APIs and build the
Python-APIs on top of those.
4. **Add pass to normalize generic ....:** This pass normalizes
sub-channel quantized types to per-tensor per-axis types, if possible.
A design note:
- **Explicitly storing the `quantized_dimensions`, even when they can be
derived for ranked tensor.**
While it's possible to infer quantized dimensions from the static shape
of the scales (or zero-points) tensor for ranked
data tensors
([ref](https://discourse.llvm.org/t/rfc-supporting-sub-channel-quantization-in-mlir/82694/3)
for background), there are cases where this can lead to ambiguity and
issues with round-tripping.
```
Consider the example: tensor<2x4x!quant.uniform<i8:f32:{0:2, 0:2}, {{s00:z00, s01:z01}}>>
```
The shape of the scales tensor is [1, 2], which might suggest that only
axis 1 is quantized. While this inference is technically correct, as the
block size for axis 0 is a degenerate case (equal to the dimension
size), it can cause problems with round-tripping. Therefore, even for
ranked tensors, we are explicitly storing the quantized dimensions.
Suggestions welcome!
PS: I understand that the upcoming holidays may impact your schedule, so
please take your time with the review. There's no rush.
Commit: 385311625945e65990bd60bea76a045dcaf3f47b
https://github.com/llvm/llvm-project/commit/385311625945e65990bd60bea76a045dcaf3f47b
Author: Koakuma <koachan at protonmail.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/sparc-ias-Wa.s
Log Message:
-----------
[SPARC][Driver] Set correct IAS mode defaults for Linux and Free/OpenBSD (#130108)
On those OSes, clang should set the assembler to enable VIS by default.
This is already the case when clang calls an external assembler, so make
sure clang+IAS use the same defaults.
This should fix [issue #125124](https://github.com/llvm/llvm-project/issues/125124).
Commit: da01a185f196df4b60b61306fdc4e185f1e9fb39
https://github.com/llvm/llvm-project/commit/da01a185f196df4b60b61306fdc4e185f1e9fb39
Author: Koakuma <koachan at protonmail.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcTargetStreamer.cpp
A llvm/test/MC/Sparc/elf-sparc-feature.s
Log Message:
-----------
[SPARC][IAS] Set correct ELF flag values for VIS & VIS2-enabled objects
Reviewers: brad0, s-barannikov, rorth
Reviewed By: s-barannikov
Pull Request: https://github.com/llvm/llvm-project/pull/130966
Commit: ce2c4ea658239771dec542249a77dcf2056d8b8a
https://github.com/llvm/llvm-project/commit/ce2c4ea658239771dec542249a77dcf2056d8b8a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/include/llvm/Analysis/InstructionPrecedenceTracking.h
M llvm/lib/Analysis/InstructionPrecedenceTracking.cpp
Log Message:
-----------
[Analysis] Avoid repeated hash lookups (NFC) (#132584)
FirstSpecialInsts caches the first special instruction for each basic
block. This patch "inlines" fill into getFirstSpecialInstruction, the
sole caller, to eliminate repeated hash lookups.
Commit: 6ecc1ff0a45c0065d9f23b91c22d233a0443d5e0
https://github.com/llvm/llvm-project/commit/6ecc1ff0a45c0065d9f23b91c22d233a0443d5e0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachinePipeliner.h
Log Message:
-----------
[CodeGen] Avoid repeated hash lookups (NFC) (#132585)
Commit: 0a08d71f2e5966b26bce97db69cd3c5640b1642d
https://github.com/llvm/llvm-project/commit/0a08d71f2e5966b26bce97db69cd3c5640b1642d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/DebugInfo/PDB/Native/SymbolCache.cpp
Log Message:
-----------
[DebugInfo] Avoid repeated hash lookups (NFC) (#132586)
Commit: 0b181de20665574e086ed147868e34e8787a5286
https://github.com/llvm/llvm-project/commit/0b181de20665574e086ed147868e34e8787a5286
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
M llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOARM.h
M llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOX86_64.h
Log Message:
-----------
[ExecutionEngine] Avoid repeated hash lookups (NFC) (#132587)
Commit: 2f1416bbcde898d65e9762e6ce498bb0121e4610
https://github.com/llvm/llvm-project/commit/2f1416bbcde898d65e9762e6ce498bb0121e4610
Author: Hui <hui.xie1990 at gmail.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/docs/Status/Cxx23Papers.csv
M libcxx/include/CMakeLists.txt
A libcxx/include/__flat_set/flat_set.h
A libcxx/include/__flat_set/ra_iterator.h
A libcxx/include/flat_set
M libcxx/include/module.modulemap
M libcxx/modules/std.compat.cppm.in
M libcxx/modules/std.cppm.in
M libcxx/modules/std/flat_set.inc
A libcxx/test/libcxx/containers/container.adaptors/flat.set/assert.sorted_unique.pass.cpp
A libcxx/test/libcxx/containers/container.adaptors/flat.set/iterator.compile.pass.cpp
A libcxx/test/libcxx/diagnostics/flat_map.nodiscard.verify.cpp
A libcxx/test/libcxx/diagnostics/flat_multimap.nodiscard.verify.cpp
A libcxx/test/libcxx/diagnostics/flat_set.nodiscard.verify.cpp
M libcxx/test/libcxx/transitive_includes/cxx03.csv
M libcxx/test/libcxx/transitive_includes/cxx11.csv
M libcxx/test/libcxx/transitive_includes/cxx14.csv
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
R libcxx/test/std/containers/container.adaptors/flat.map/flat.map.capacity/empty.verify.cpp
R libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.capacity/empty.verify.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.capacity/empty.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.capacity/max_size.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.capacity/size.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/alloc.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/assign_initializer_list.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/compare.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/containers.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/copy.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/copy_alloc.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/copy_assign.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/deduct.compile.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/deduct.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/deduct_pmr.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/default.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/dtor_noexcept.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/initializer_list.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/iter_iter.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/move.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/move_alloc.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/move_assign.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/pmr.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/range.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/sorted_container.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/sorted_initializer_list.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/sorted_iter_iter.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.erasure/erase_if.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.erasure/erase_if_exceptions.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.iterators/iterator.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.iterators/iterator_comparison.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.iterators/iterator_concept_conformance.compile.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.iterators/range_concept_conformance.compile.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.iterators/reverse_iterator.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/clear.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/emplace.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/emplace_hint.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/erase_iter.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/erase_iter_iter.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/erase_key.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/erase_key_transparent.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/extract.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_cv.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_initializer_list.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_iter_cv.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_iter_iter.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_iter_rv.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_range.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_rv.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_sorted_initializer_list.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_sorted_iter_iter.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_transparent.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/replace.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/swap_exception.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/swap_free.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/swap_member.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.observers/comp.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/contains.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/contains_transparent.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/count.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/count_transparent.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/equal_range.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/equal_range_transparent.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/find.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/find_transparent.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/lower_bound.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/lower_bound_transparent.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/upper_bound.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/upper_bound_transparent.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/helpers.h
A libcxx/test/std/containers/container.adaptors/flat.set/incomplete_type.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/op_compare.pass.cpp
A libcxx/test/std/containers/container.adaptors/flat.set/types.compile.pass.cpp
A libcxx/test/std/language.support/support.limits/support.limits.general/flat_set.version.compile.pass.cpp
M libcxx/utils/libcxx/header_information.py
M libcxx/utils/libcxx/test/modules.py
Log Message:
-----------
[libc++] implement std::flat_set (#125241)
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: 206b42c98e2073175e1bfa4a02f13bc7ed1482a5
https://github.com/llvm/llvm-project/commit/206b42c98e2073175e1bfa4a02f13bc7ed1482a5
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Use VPBuilder to create ComputeReductionResult. (NFC)
Update code to use VPBuilder, to simplify follow-up changes.
Commit: a187060de9193ad3ff356195feb04b16f1f28ff0
https://github.com/llvm/llvm-project/commit/a187060de9193ad3ff356195feb04b16f1f28ff0
Author: Jonathan Schleifer <js-github at nil.im>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M clang/include/clang/Basic/ObjCRuntime.h
M clang/lib/CodeGen/CGObjCGNU.cpp
Log Message:
-----------
Allow direct dispatch for the ObjFW runtime (#126382)
Allow direct dispatch for the ObjFW runtime
Commit: 0be69e532c52e99fcea98fe4a824270a921ffc74
https://github.com/llvm/llvm-project/commit/0be69e532c52e99fcea98fe4a824270a921ffc74
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Support/SlowDynamicAPInt.cpp
Log Message:
-----------
[support] SlowDynamicAPInt: use fully qualified namespaces for func definitions (#132575)
Found while trying to amalgamate support lib. And I think current code
style require it anyway.
Commit: a578a75ab54e84a699bd6af436167b54b329f3a5
https://github.com/llvm/llvm-project/commit/a578a75ab54e84a699bd6af436167b54b329f3a5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Target/VE/VEISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[Target] Use DenseSet instead of DenseMap (NFC) (#132619)
This patch uses DenseSet instead of DenseMap. Note that the set of
Registers that map to true without this patch is the same as the set
of Registers that are present in the set with this patch. This patch
is inspired by:
commit d7879e524fbbc4c2790dac62343444191f736f00
Author: Craig Topper <craig.topper at sifive.com>
Date: Wed Mar 19 08:32:09 2025 -0700
Commit: 39df4945e1888d407777e58fbf03f6ad1e859c11
https://github.com/llvm/llvm-project/commit/39df4945e1888d407777e58fbf03f6ad1e859c11
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Target/Xtensa/AsmParser/XtensaAsmParser.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaInstPrinter.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCExpr.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCExpr.h
M llvm/lib/Target/Xtensa/XtensaAsmPrinter.cpp
Log Message:
-----------
[Xtensa] Rename VariantKind to Specifier
Follow the X86, Mips, and RISCV renaming.
> "Relocation modifier" suggests adjustments happen during the linker's relocation step rather than the assembler's expression evaluation.
> "Relocation specifier" is clear, aligns with Arm and IBM AIX's documentation, and fits the assembler's role seamlessly.
In addition, rename *MCExpr::getKind, which confusingly shadows the base class getKind.
The parseSpecifier name follows Sparc.
Commit: e3966814d55905dcd3aaac1b60d81ff1d686f627
https://github.com/llvm/llvm-project/commit/e3966814d55905dcd3aaac1b60d81ff1d686f627
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
A llvm/test/MC/AArch64/data-directive-specifier.s
R llvm/test/MC/AArch64/elf-reloc-gotpcrel32.s
R llvm/test/MC/AArch64/elf-reloc-plt32.s
Log Message:
-----------
[test] Improve R_AARCH64_PLT32 and R_AARCH64_GOTPCREL32 tests
Commit: c39d39303833c515f11921a96a97d668ed3fddf2
https://github.com/llvm/llvm-project/commit/c39d39303833c515f11921a96a97d668ed3fddf2
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
Log Message:
-----------
ELFObjectWriter: Remove relocation specifier test from shouldRelocateWithSymbol
It's the decision of backend needsRelocateWithSymbol whether the
STT_SECTION adjustment should be suppressed.
test/MC/AArch64/data-directive-specifier.s demonstrates how to test this
property.
Commit: 83c3ec1b07c6c6857379cbdc6819262f2813b8e3
https://github.com/llvm/llvm-project/commit/83c3ec1b07c6c6857379cbdc6819262f2813b8e3
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/MCValue.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
Log Message:
-----------
[MC] Move isMemtag test to AArch64
And introduce MCValue::getAddSym & MCValue::getSubSym to simplify code.
We do not utilize the MCSymbol argument of needsRelocateWithSymbol
as it will go away in the future.
Commit: 8a133882bbb2bc89578985973d32d7450bed3611
https://github.com/llvm/llvm-project/commit/8a133882bbb2bc89578985973d32d7450bed3611
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVSystemOperands.td
A llvm/test/MC/RISCV/xqciint-csrs-invalid.s
A llvm/test/MC/RISCV/xqciint-csrs-valid.s
M llvm/test/MC/RISCV/xqciint-invalid.s
M llvm/test/MC/RISCV/xqciint-valid.s
Log Message:
-----------
[RISCV] Xqciint SystemRegs, Final Assembly Insts (#130867)
This adds the Xqciint system registers from the Xqci-0.7 spec, as well
as two leftover instructions: `qc.c.mret` and `qc.c.mnret`
Co-authored-by: Sudharsan Veeravalli <quic_svs at quicinc.com>
Commit: b73e144bdf01a27145724d6804a2ab63915428b4
https://github.com/llvm/llvm-project/commit/b73e144bdf01a27145724d6804a2ab63915428b4
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCExpr.cpp
M llvm/lib/MC/MCMachOStreamer.cpp
M llvm/lib/MC/MCObjectStreamer.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/AArch64MachObjectWriter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
Log Message:
-----------
MCValue: Simplify code with getSubSym
MCValue::SymB is a MCSymbolRefExpr *, which might become MCSymbol * in
the future. Simplify some code that uses MCValue::SymB.
Commit: 46880fe12bd004c9553b2f339b1374d5f054c839
https://github.com/llvm/llvm-project/commit/46880fe12bd004c9553b2f339b1374d5f054c839
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/include/llvm/ADT/SetVector.h
M llvm/include/llvm/ADT/SmallPtrSet.h
M llvm/include/llvm/ADT/SmallSet.h
M llvm/include/llvm/ADT/StringSet.h
M llvm/unittests/ADT/SetVectorTest.cpp
M llvm/unittests/ADT/SmallPtrSetTest.cpp
M llvm/unittests/ADT/SmallSetTest.cpp
M llvm/unittests/ADT/StringSetTest.cpp
Log Message:
-----------
[ADT] Add range constructors to *Set (#132623)
DenseSet recently gained a range constructor:
DenseSet<T> Dest(llvm::from_range, Src);
This patch adds the same signature to SetVector, SmallPtrSet,
SmallSet, and StringSet for consistency.
Commit: dfae1f968e7498f0f8487b0539d5a1c322c1daf9
https://github.com/llvm/llvm-project/commit/dfae1f968e7498f0f8487b0539d5a1c322c1daf9
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCValue.cpp
M llvm/lib/MC/XCOFFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
Log Message:
-----------
MCValue: Simplify code with getSubSym
Commit: 4781a8ebd0f3c0807adcbf5d8d6c72fd5839eb85
https://github.com/llvm/llvm-project/commit/4781a8ebd0f3c0807adcbf5d8d6c72fd5839eb85
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/MCValue.h
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.h
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.cpp
M llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCExpr.cpp
M llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCExpr.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCExpr.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.h
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCExpr.cpp
Log Message:
-----------
MCValue: add setSpecifier to simplify code
This primarily simplifies backend evaluateAsRelocatableImpl.
Commit: fb44f006413f814ea92690218046732fed049ca5
https://github.com/llvm/llvm-project/commit/fb44f006413f814ea92690218046732fed049ca5
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M libcxx/docs/CodingGuidelines.rst
M libcxx/include/__algorithm/simd_utils.h
M libcxx/include/__compare/common_comparison_category.h
M libcxx/include/__compare/compare_three_way_result.h
M libcxx/include/__functional/bind.h
M libcxx/include/__iterator/common_iterator.h
M libcxx/include/__iterator/concepts.h
M libcxx/include/__iterator/iterator_traits.h
M libcxx/include/__mdspan/extents.h
M libcxx/include/__memory/pointer_traits.h
M libcxx/include/__ranges/drop_view.h
M libcxx/include/__ranges/repeat_view.h
M libcxx/include/__ranges/reverse_view.h
M libcxx/include/__ranges/subrange.h
M libcxx/include/__ranges/take_view.h
M libcxx/include/__ranges/transform_view.h
M libcxx/include/__tuple/make_tuple_types.h
M libcxx/include/__type_traits/add_rvalue_reference.h
M libcxx/include/__type_traits/common_reference.h
M libcxx/include/__type_traits/common_type.h
M libcxx/include/__type_traits/strip_signature.h
M libcxx/include/__utility/pair.h
M libcxx/include/array
M libcxx/include/complex
M libcxx/include/experimental/__simd/declaration.h
M libcxx/include/tuple
M libcxx/include/variant
M libcxx/test/tools/clang_tidy_checks/nodebug_on_aliases.cpp
Log Message:
-----------
[libc++] Add [[gnu::nodebug]] on type traits (#128502)
Commit: b2b3cb5f76f15d38e67f70124d275a5696bfdb83
https://github.com/llvm/llvm-project/commit/b2b3cb5f76f15d38e67f70124d275a5696bfdb83
Author: David CARLIER <devnexen at gmail.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
Log Message:
-----------
[compiler-rt][rtsan] memffd_create for linux interception. (#132571)
Commit: ff3e2ba9eb94217f3ad3525dc18b0c7b684e0abf
https://github.com/llvm/llvm-project/commit/ff3e2ba9eb94217f3ad3525dc18b0c7b684e0abf
Author: Martin Storsjö <martin at martin.st>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll
Log Message:
-----------
Revert "[VPlan] Add transformation to narrow interleave groups. (#106441)"
This reverts commit dfa665f19c52d98b8d833a8e9073427ba5641b19.
This commit caused miscompilations in ffmpeg, see
https://github.com/llvm/llvm-project/pull/106441 for details.
Commit: ff25115ca0e150d723c75ae981b9449e1028ed2d
https://github.com/llvm/llvm-project/commit/ff25115ca0e150d723c75ae981b9449e1028ed2d
Author: Justin Fargnoli <jfargnoli at nvidia.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/test/CodeGen/NVPTX/atomics-sm70.ll
M llvm/test/CodeGen/NVPTX/atomics-sm90.ll
M llvm/test/CodeGen/NVPTX/atomics.ll
M llvm/test/CodeGen/NVPTX/call-with-alloca-buffer.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/disjoint-or-addr.ll
M llvm/test/CodeGen/NVPTX/div.ll
M llvm/test/CodeGen/NVPTX/f16-instructions.ll
M llvm/test/CodeGen/NVPTX/f16x2-instructions.ll
M llvm/test/CodeGen/NVPTX/fma.ll
M llvm/test/CodeGen/NVPTX/i128.ll
M llvm/test/CodeGen/NVPTX/indirect_byval.ll
M llvm/test/CodeGen/NVPTX/inline-asm-b128-test1.ll
M llvm/test/CodeGen/NVPTX/inline-asm-b128-test2.ll
M llvm/test/CodeGen/NVPTX/local-stack-frame.ll
M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
M llvm/test/CodeGen/NVPTX/no-extra-parens.ll
M llvm/test/CodeGen/NVPTX/nvvm-reflect-arch-O0.ll
M llvm/test/CodeGen/NVPTX/proxy-reg-erasure-ptx.ll
M llvm/test/CodeGen/NVPTX/variadics-backend.ll
M llvm/test/DebugInfo/NVPTX/dbg-declare-alloca.ll
Log Message:
-----------
[NVPTX] cleanup & canonicalize `mov` (#129344)
Use a `multiclass` to define `mov` and canonicalize the `mov`
instruction to always use the `b<bit-size>` suffix.
Commit: 549fc0c1f9e7af83b2306029b50ad8d967e08e8a
https://github.com/llvm/llvm-project/commit/549fc0c1f9e7af83b2306029b50ad8d967e08e8a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/include/llvm/ADT/GenericCycleImpl.h
Log Message:
-----------
[ADT] Use SetVector::insert_range (NFC) (#132633)
Commit: 06fd10f1da8143a048763e5701e7bd4eb4dc1271
https://github.com/llvm/llvm-project/commit/06fd10f1da8143a048763e5701e7bd4eb4dc1271
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/early_exit_costs.ll
Log Message:
-----------
[VPlan] Don't create ExtractElement recipes for scalar plans. (#131604)
ExtractElements are no-ops for scalar VPlans. Don't introduce them in
handleUncountableEarlyExit if the plan has only a scalar VF.
This fixes a crash trying to compute the cost of ExtractElement after 26ecf978951b79.
PR: https://github.com/llvm/llvm-project/pull/131604
Commit: 49ce038a1abe594735c81ec6b53789f88d358edc
https://github.com/llvm/llvm-project/commit/49ce038a1abe594735c81ec6b53789f88d358edc
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/test/MC/RISCV/corev/XCVelw-invalid.s
M llvm/test/MC/RISCV/corev/XCVmem-invalid.s
M llvm/test/MC/RISCV/insn-invalid.s
M llvm/test/MC/RISCV/rv32d-invalid.s
M llvm/test/MC/RISCV/rv32f-invalid.s
M llvm/test/MC/RISCV/rv32i-invalid.s
M llvm/test/MC/RISCV/rv32zfh-invalid.s
M llvm/test/MC/RISCV/rv32zilsd-invalid.s
M llvm/test/MC/RISCV/rv64i-invalid.s
M llvm/test/MC/RISCV/rv64zdinx-invalid.s
M llvm/test/MC/RISCV/rv64zfh-invalid.s
M llvm/test/MC/RISCV/rvi-pseudos-invalid.s
M llvm/test/MC/RISCV/rvzfbfmin-invalid.s
M llvm/test/MC/RISCV/rvzfhmin-invalid.s
M llvm/test/MC/RISCV/tlsdesc.s
M llvm/test/MC/RISCV/xqciac-invalid.s
Log Message:
-----------
RISCVAsmParser: Replace "modifier" with "specifier" in diagnostics
Use the preferred "specifier" term for relocation specifier.
"Relocation modifier" suggests adjustments happen during the linker's
relocation step rather than the assembler's expression evaluation.
The term "relocation specifier" is preferred by Arm for :lower16: and
IBM AIX, and I am trying to standardize in MC.
Pull Request: https://github.com/llvm/llvm-project/pull/132565
Commit: 41b76119ecc2b22546dc27ca51947304cf5aca28
https://github.com/llvm/llvm-project/commit/41b76119ecc2b22546dc27ca51947304cf5aca28
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/IR/Metadata.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
M llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/tools/llvm-exegesis/lib/Clustering.cpp
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
Log Message:
-----------
[llvm] Use range constructors for *Set (NFC) (#132636)
Commit: 9d92d4b01ce0ddfdcbb2bd5ec0ec3208ad480ccc
https://github.com/llvm/llvm-project/commit/9d92d4b01ce0ddfdcbb2bd5ec0ec3208ad480ccc
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSystemOperands.td
M llvm/test/MC/RISCV/machine-csr-names.s
Log Message:
-----------
[RISCV] Add alias names for tdata1 and tdata3 CSRs. (#132525)
The RISC-V Debug Specification defines multiple names for these CSRs.
https://github.com/riscv/riscv-debug-spec/releases/tag/1.0
Commit: b32cf756994cbab83e50b9d84df03d5ee03f31f8
https://github.com/llvm/llvm-project/commit/b32cf756994cbab83e50b9d84df03d5ee03f31f8
Author: Alan <ahulambda at gmail.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/bindings/ocaml/debuginfo/llvm_debuginfo.ml
M llvm/bindings/ocaml/debuginfo/llvm_debuginfo.mli
M llvm/include/llvm-c/DebugInfo.h
Log Message:
-----------
[LLVM-C][OCaml] Make LLVMMetadataKind consistent between C and OCaml (#132268)
- Move LLVMDISubrangeTypeMetadataKind to end of LLVMMetadataKind enum.
Inserting a new enum constant in the middle of the enum breaks the ABI for
that enum. Commit e298fc2 introduced this issue, which was revealed because
the OCaml binding tests failed.
- Bring OCaml bindings up to date with LLVMMetadataKind enum.
Commit: 7a056895c59346e75dacee746e101fe92c41a8fd
https://github.com/llvm/llvm-project/commit/7a056895c59346e75dacee746e101fe92c41a8fd
Author: Austin <zhenhangwang at huawei.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/test/Conversion/MemRefToLLVM/invalid.mlir
M mlir/test/Conversion/MemRefToLLVM/issue-70160.mlir
Log Message:
-----------
[mlir] Fix typo of tests (NFC) (#132396)
Commit: 3b20ac00f915d3c3a34222de429fa0a0a47d7dbc
https://github.com/llvm/llvm-project/commit/3b20ac00f915d3c3a34222de429fa0a0a47d7dbc
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
Log Message:
-----------
[NFC]Don't use else after a return (#132644)
A trivial code clean-up per
https://llvm.org/docs/CodingStandards.html#don-t-use-else-after-a-return
Commit: 0175dce1380de64f4e0f627093b8f4858e354431
https://github.com/llvm/llvm-project/commit/0175dce1380de64f4e0f627093b8f4858e354431
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/include/llvm/ADT/SetVector.h
M llvm/unittests/ADT/SetVectorTest.cpp
Log Message:
-----------
[ADT] Add a range constructor to SmallSetVector (#132645)
DenseSet recently gained a range constructor:
DenseSet<T> Dest(llvm::from_range, Src);
This patch adds the same signature to SmallSetVector for consistency.
Commit: 943a70717c629f43b309ab56e8141ffb131871a6
https://github.com/llvm/llvm-project/commit/943a70717c629f43b309ab56e8141ffb131871a6
Author: tangaac <tangyan01 at loongson.cn>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lsx/vec-shuffle-any-ext.ll
A llvm/test/CodeGen/LoongArch/lsx/vec-shuffle-sign-ext.ll
Log Message:
-----------
[LoongArch] Pre-commit test for vector sext, zext (#131742)
Commit: 73dc2afd2c334aac735caba94292052d63014c9d
https://github.com/llvm/llvm-project/commit/73dc2afd2c334aac735caba94292052d63014c9d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
M llvm/lib/Transforms/IPO/PartialInlining.cpp
M llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Scalar/GVNSink.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/LoopPeel.cpp
M llvm/lib/Transforms/Utils/LoopUnroll.cpp
M llvm/lib/Transforms/Utils/SSAUpdaterBulk.cpp
Log Message:
-----------
[Transforms] Use *Set::insert_range (NFC) (#132652)
We can use *Set::insert_range to collapse:
for (auto Elem : Range)
Set.insert(E);
down to:
Set.insert_range(Range);
In some cases, we can further fold that into the set declaration.
Commit: e409464e955e32aaab7147125982fd57abc534ca
https://github.com/llvm/llvm-project/commit/e409464e955e32aaab7147125982fd57abc534ca
Author: A. Jiang <de34 at live.cn>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_comparators.pass.cpp
M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_projections.pass.cpp
M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
M libcxx/test/std/algorithms/ranges_robust_against_omitting_invoke.pass.cpp
M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
M libcxx/test/std/algorithms/robust_against_adl_on_new.pass.cpp
M libcxx/test/std/algorithms/robust_against_proxy_iterators_lifetime_bugs.pass.cpp
M libcxx/test/std/algorithms/robust_re_difference_type.compile.pass.cpp
M libcxx/test/support/test_macros.h
Log Message:
-----------
[libc++][test][NFC] Introduce `TEST_STD_AT_LEAST_26_OR_RUNTIME_EVALUATED` (#132593)
And use it for test cases that became constant-evaluation-suitable due
to P2562R1.
`TEST_STD_AT_LEAST_(20|23)_OR_RUNTIME_EVALUATED` are the precedents.
Commit: 36b1fb5c7afae5583c76f347e247731e5db37190
https://github.com/llvm/llvm-project/commit/36b1fb5c7afae5583c76f347e247731e5db37190
Author: Lang Hames <lhames at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M compiler-rt/lib/orc/tests/unit/error_test.cpp
Log Message:
-----------
[ORC-RT] Fix typos in file comments. NFC.
Commit: 5d8e8e82e1cf0df49afceffe52dbccec3084c15f
https://github.com/llvm/llvm-project/commit/5d8e8e82e1cf0df49afceffe52dbccec3084c15f
Author: Lang Hames <lhames at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M compiler-rt/lib/orc/CMakeLists.txt
M compiler-rt/lib/orc/error.h
R compiler-rt/lib/orc/extensible_rtti.cpp
R compiler-rt/lib/orc/extensible_rtti.h
A compiler-rt/lib/orc/rtti.cpp
A compiler-rt/lib/orc/rtti.h
M compiler-rt/lib/orc/tests/unit/CMakeLists.txt
R compiler-rt/lib/orc/tests/unit/extensible_rtti_test.cpp
A compiler-rt/lib/orc/tests/unit/rtti_test.cpp
Log Message:
-----------
[ORC-RT] Rename extensible_rtti.{h,cpp} to rtti.{h,cpp}. NFCI.
The "extensible_" prefix on these files was inherited from LLVM, where it
distinguished the dynamic RTTI APIs from the LLVM's custom static RTTI APIs.
In the ORC runtime these files will be used to hold all of our RTTI APIs
(the current dynamic ones, and any static ones added in the future), so we
shouldn't use this prefix.
Commit: 054e0b41a8a997c6f7cf24c57d6dbe2dcfb2c3be
https://github.com/llvm/llvm-project/commit/054e0b41a8a997c6f7cf24c57d6dbe2dcfb2c3be
Author: Shoreshen <372660931 at qq.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.ll
Log Message:
-----------
[AMDGPU] Add all type for bitcast on VReg_512 (#131775)
Add all types pattern for bitcast on VReg_512
Commit: 1019457891fda0b2f32f50ba99d6a261df12ec08
https://github.com/llvm/llvm-project/commit/1019457891fda0b2f32f50ba99d6a261df12ec08
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
M llvm/lib/CodeGen/IfConversion.cpp
M llvm/lib/CodeGen/IndirectBrExpandPass.cpp
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
M llvm/lib/CodeGen/LiveVariables.cpp
M llvm/lib/CodeGen/MachinePipeliner.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/SjLjEHPrepare.cpp
Log Message:
-----------
[CodeGen] Use *Set::insert_range (NFC) (#132651)
We can use *Set::insert_range to collapse:
for (auto Elem : Range)
Set.insert(E);
down to:
Set.insert_range(Range);
Commit: ef3e521a2b34050d92a6b711c5df811a0bde84f4
https://github.com/llvm/llvm-project/commit/ef3e521a2b34050d92a6b711c5df811a0bde84f4
Author: Lang Hames <lhames at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M compiler-rt/lib/orc/tests/unit/CMakeLists.txt
A compiler-rt/lib/orc/tests/unit/unique_function_test.cpp
A compiler-rt/lib/orc/unique_function.h
Log Message:
-----------
[ORC-RT] Add unique_function utility to the ORC runtime.
A bare-bones version of LLVM's unique_function: this behaves like a
std::unique_function, except that it supports move only callable types.
This will be used in upcoming improvements to the ORC runtime.
Commit: 3c2731ce46f01a984a9cc1807207de8d333bc350
https://github.com/llvm/llvm-project/commit/3c2731ce46f01a984a9cc1807207de8d333bc350
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[AMDGPU] Avoid repeated hash lookups (NFC) (#132657)
Commit: 174110bf3c3b5dc6efa466392f740bb6e9e9acf6
https://github.com/llvm/llvm-project/commit/174110bf3c3b5dc6efa466392f740bb6e9e9acf6
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
A llvm/include/llvm/CodeGen/LiveDebugValuesPass.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/LiveDebugValues/LiveDebugValues.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/test/CodeGen/ARM/dbg-range-extension.mir
M llvm/test/DebugInfo/AArch64/compiler-gen-bbs-livedebugvalues.mir
Log Message:
-----------
[CodeGen][NPM] Port LiveDebugValues to NPM (#131563)
Commit: e3bd1f2b3f2ff8317e72fc828db8bcdbeb50b1aa
https://github.com/llvm/llvm-project/commit/e3bd1f2b3f2ff8317e72fc828db8bcdbeb50b1aa
Author: tangaac <tangyan01 at loongson.cn>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/test/CodeGen/LoongArch/lsx/build-vector.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-sext.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-shuffle-any-ext.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-shuffle-sign-ext.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-trunc.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-zext.ll
Log Message:
-----------
[LoongArch] lower vector shuffle to zero or any extend (#129485)
Commit: 66531c998aa76bfb5538a28656b979c268e7b126
https://github.com/llvm/llvm-project/commit/66531c998aa76bfb5538a28656b979c268e7b126
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libcxx/include/__math/traits.h
M libcxx/test/std/depr/depr.c.headers/math_h.pass.cpp
M libcxx/test/std/numerics/c.math/signbit.pass.cpp
Log Message:
-----------
[libc++] Remove one of the std::signbit overloads (#130505)
We'e specialized `std::signbit` for signed and unsigned integral types
seperately, even though the optimizer can trivially figure out that
`unsigned_value < 0` always false is. This patch removes the
specialization, since there is really not much of a benefit to it.
Commit: ddc62797c4fb30475bb2787101fc5b7acb641af9
https://github.com/llvm/llvm-project/commit/ddc62797c4fb30475bb2787101fc5b7acb641af9
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libcxx/include/__type_traits/add_lvalue_reference.h
M libcxx/include/__type_traits/add_pointer.h
M libcxx/include/__type_traits/add_rvalue_reference.h
M libcxx/include/__type_traits/decay.h
M libcxx/include/__type_traits/is_referenceable.h
A libcxx/test/libcxx/utilities/meta/is_referenceable.compile.pass.cpp
R libcxx/test/libcxx/utilities/meta/is_referenceable.pass.cpp
M libcxx/test/std/utilities/meta/meta.trans/objc_support.compile.pass.mm
Log Message:
-----------
[libc++] Simplify the implementation of __is_referenceable (#130043)
The `__is_referenceable` builtin has been removed from Clang, since all
its uses have been replaced by builtins themselves. This trait only
exists for GCC compatibility and to word around some issues in the other
traits. The non-builtin implementation has been refactored to use
variable templates instead, making the implementation much simpler.
Commit: 7e6d008023e0892558f75ae3606d0b62000a66d0
https://github.com/llvm/llvm-project/commit/7e6d008023e0892558f75ae3606d0b62000a66d0
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-23 (Sun, 23 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
Log Message:
-----------
AsmPrinter: Remove unneeded lowerRelativeReference overrides
The function is only called by AsmPrinter, where there is a fallback
when lowerRelativeReference returns nullptr.
wasm and XCOFF could use the fallback code.
(lowerRelativeReference was introduced in 2016 (https://reviews.llvm.org/D17938)
for C++ relative vtables, but C++ relative vtables ended up using
dso_local_equivalent. llvm/test/MC/COFF/cross-section-relative.ll also
uses this.)
Commit: 702c38ed7cff8329ed7093b64e51c47c668fadf3
https://github.com/llvm/llvm-project/commit/702c38ed7cff8329ed7093b64e51c47c668fadf3
Author: Thurston Dang <thurston at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M compiler-rt/lib/asan/asan_linux.cpp
Log Message:
-----------
[asan] Fix-forward #131975 by renaming 'TryReExecWithoutASLR'
Function definition added in #131975 was missing 'Try' (do or do not ...). My guess is buildbots
mostly didn't trip because usage was gated by 'if (sizeof(uptr) ==
32)', which is rare among buildbots.
Commit: 432328e3f4f22d0cfff8f3a6474f26235799641d
https://github.com/llvm/llvm-project/commit/432328e3f4f22d0cfff8f3a6474f26235799641d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
Log Message:
-----------
[LoongArch] Fix a warning
This patch fixes:
llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp:561:7: error:
unused variable 'ScalarSizeInBits' [-Werror,-Wunused-variable]
Commit: 76b999d70f71dd4339de60f1616c02051f51e001
https://github.com/llvm/llvm-project/commit/76b999d70f71dd4339de60f1616c02051f51e001
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
Log Message:
-----------
[clang-tidy] Avoid repeated map lookups (NFC) (#132656)
Commit: b75dad090c14ebafe445f486e2b27ab47fd12a16
https://github.com/llvm/llvm-project/commit/b75dad090c14ebafe445f486e2b27ab47fd12a16
Author: MingYan <99472920+NexMing at users.noreply.github.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
A llvm/test/CodeGen/RISCV/rvv/vp-splat-mask.ll
Log Message:
-----------
[RISCV] Support VP_SPLAT mask operations (#132345)
When val is a constant, it will:
(vp.splat val, mask, vl) -> (select val, (riscv_vmset_vl vl),
(riscv_vmclr_vl vl))
Otherwise:
(vp.splat val, mask, vl) -> (vmsne_vl (vmv_v_x_vl (zext val), vl),
splat(zero), mask, vl)
---------
Co-authored-by: yanming <ming.yan at terapines.com>
Commit: 41f9a00818d42446168b9904f879c8ab39e7196d
https://github.com/llvm/llvm-project/commit/41f9a00818d42446168b9904f879c8ab39e7196d
Author: Javed Absar <javed.absar at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-empty-tensor-elimination.mlir
Log Message:
-----------
[NFC][mlir][bufferization] (#132637)
Commit: 376aa741b59f9d6a44049f007d29fca832f8a4bf
https://github.com/llvm/llvm-project/commit/376aa741b59f9d6a44049f007d29fca832f8a4bf
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
A llvm/test/CodeGen/X86/regallocfast-callbr-asm-spills-after-reload.mir
Log Message:
-----------
[RegAllocFast] Introduce test for PR131350 (NFC)
Commit: ade22765174e64f6c02233eff8d55e6726e1bab1
https://github.com/llvm/llvm-project/commit/ade22765174e64f6c02233eff8d55e6726e1bab1
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/RegAllocFast.cpp
M llvm/test/CodeGen/X86/regallocfast-callbr-asm-spills-after-reload.mir
Log Message:
-----------
[RegAllocFast] Ensure live-in vregs get reloaded after INLINEASM_BR spills
We have already ensured in 9cec2b246e719533723562950e56c292fe5dd5ad
that `INLINEASM_BR` output operands get spilled onto the stack, both
in the fallthrough path and in the indirect targets. Since reloads of
live-ins values into physical registers contextually happen after all
MIR instructions (and ops) have been visited, make sure such loads are
placed at the start of the block, but after prologues or `INLINEASM_BR`
spills, as otherwise this may cause stale values to be read from the
stack.
Fixes: #74483, #110251.
Commit: 6e3c24fc0a95b8369c85e0b8f8a6723697e27fbb
https://github.com/llvm/llvm-project/commit/6e3c24fc0a95b8369c85e0b8f8a6723697e27fbb
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AMDGPU/permute_i8.ll
M llvm/test/CodeGen/AMDGPU/sint_to_fp.f64.ll
Log Message:
-----------
[DAG] Combine (sext (sext_in_reg x)) to (sext_in_reg (any_extend x)) (#132386)
Commit: c457c8895181aff3c02e9ffdb7e05f58957aa151
https://github.com/llvm/llvm-project/commit/c457c8895181aff3c02e9ffdb7e05f58957aa151
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/combine-ext-trunc.mir
R llvm/test/CodeGen/AArch64/GlobalISel/combine-with-flags.mir
M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-extending-loads.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/combine-trunc-sext.mir
M llvm/test/CodeGen/RISCV/GlobalISel/combine.mir
Log Message:
-----------
[GlobalISel] Combine (sext (trunc x)) to (sext_inreg x) (#131622)
Split from #131312
Commit: ec9546d1699457169da5d6456d4080c52f6972f9
https://github.com/llvm/llvm-project/commit/ec9546d1699457169da5d6456d4080c52f6972f9
Author: Georgiy Samoylov <g.samoylov at syntacore.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/test/API/tools/lldb-server/TestGdbRemoteForkNonStop.py
Log Message:
-----------
[lldb] Fix TestGdbRemoteForkNonStop.py test (#131293)
During lldb testing on remote targets TestGdbRemoteForkNonStop.py
freezes because in this test we try to create file on remote machine
using absolute file path from local machine. This patch fixes this error
Commit: 38d71c9bdcf6b10c6fe02d5bd74fc8e6efb50a4d
https://github.com/llvm/llvm-project/commit/38d71c9bdcf6b10c6fe02d5bd74fc8e6efb50a4d
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/test/SemaTemplate/deduction-guide.cpp
Log Message:
-----------
[Clang] Fix the assertion condition after b8d1f3d6 (#132669)
Thanks to the example provided by MagentaTreehouse, I realized the
assertion I added in b8d1f3d6 didn't cover all valid cases like, when
inheriting from a class template specialization, the source of a
synthesized template parameter might be an implicit specialization,
whose inner function template is thus living at depth 0, for which we
don’t want it to overflow too.
I've decided to remove that assertion because I don't think it's
particularly useful: we're checking whether Depth = 0 parameters come
from function templates whose parents contribute no template parameters
to the depth, which is redundant given what the template depth already
means.
This also incorporates a drive-by fix for
https://github.com/llvm/llvm-project/pull/132061#discussion_r2008756718,
which I somehow missed.
Commit: 849e5ea94fe8c0007f73ea793ba2a986608a67be
https://github.com/llvm/llvm-project/commit/849e5ea94fe8c0007f73ea793ba2a986608a67be
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Descriptor.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode] Add Descriptor::getDataType() (#132681)
This returns the type of data in the Block, which might be different
than the type of the expression or declaration we created the block for.
This lets us remove some special cases from CheckNewDeleteForms() and
CheckNewTypeMismatch().
Commit: ef9c4f4f5cfeb6e3d194a0bb3098c45a5c75d18f
https://github.com/llvm/llvm-project/commit/ef9c4f4f5cfeb6e3d194a0bb3098c45a5c75d18f
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVImageOps.td
M mlir/test/Dialect/SPIRV/IR/image-ops.mlir
Log Message:
-----------
[mlir][spirv] Update assembly format for Image operand types (#130758)
In the example below it is not clear that `(f32)` relates to `%arg2` and
not to `vector<2xf32>`:
```mlir
%0 = spirv.ImageSampleImplicitLod %arg0, %arg1 ["Lod"](%arg2) :
!spirv.sampled_image<...>, vector<2xf32>(f32) -> vector<4xf32>
```
This change applies new format to image operations and image operands
that does not use parenthesis and is less ambiguous:
```mlir
%0 = spirv.ImageSampleImplicitLod %arg0, %arg1 ["Lod"], %arg2 :
!spirv.sampled_image<...>, vector<2xf32>, f32 -> vector<4xf32>
```
Commit: 27d9a3a39e7af51a765aaf453543af0335ac298c
https://github.com/llvm/llvm-project/commit/27d9a3a39e7af51a765aaf453543af0335ac298c
Author: bubblepipe <30717258+bubblepipe at users.noreply.github.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ScheduleZnver4.td
Log Message:
-----------
[NFC][X86] Correct Zen4 Scheduling (Part 1/2: Rename "19h" to "Zen4") (#131615)
This PR is a non-functional extraction from the original PR
[#128030](https://github.com/llvm/llvm-project/pull/128030).
Renames all instances of "19h" to "Zen4" within Zen'4 scheduling file.
Part 2/2: [[X86] Correct Zen4 Scheduling (Part 2/2: Functional
Changes)](https://github.com/llvm/llvm-project/pull/131616)
---------
Co-authored-by: bubblepipe <nag1sakaw0ru at riseup.net>
Commit: cc5f8293b320d1c6c4d0552cfab481332c83723e
https://github.com/llvm/llvm-project/commit/cc5f8293b320d1c6c4d0552cfab481332c83723e
Author: Florian Ragwitz <florian.ragwitz at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/tools/scan-build/libexec/ccc-analyzer
Log Message:
-----------
[clang][scan-build] Treat --use-cc and --use-c++ as shell commands (#131932)
So that things like --use-cc="ccache gcc" work.
Fixes #26594.
Also use the slightly simpler shellwords instead of quotewords.
Commit: 735d7c153947fd3f1adfb3cda9d29a8359870db0
https://github.com/llvm/llvm-project/commit/735d7c153947fd3f1adfb3cda9d29a8359870db0
Author: Wenju He <wenju.he at intel.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libclc/CMakeLists.txt
M libclc/cmake/modules/AddLibclc.cmake
Log Message:
-----------
[libclc] link_bc target should depends on target builtins.link.clc-arch_suffix (#132338)
Currently link_bc command depends on the bitcode file that is associated
with custom target builtins.link.clc-arch_suffix.
On windows we randomly see following error:
`
Generating builtins.link.clc-${ARCH}--.bc
Generating builtins.link.libspirv-${ARCH}.bc
error : The requested operation cannot be performed on a file with a
user-mapped section open.
`
I suspect that builtins.link.clc-${ARCH}--.bc file is being generated
while it is being used in link_bc.
This PR adds target-level dependency to ensure
builtins.link.clc-${ARCH}--.bc is generated first.
Commit: 7d048674a492d6ef8ec53c234a658da561e81063
https://github.com/llvm/llvm-project/commit/7d048674a492d6ef8ec53c234a658da561e81063
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libclc/amdgcn-amdhsa/lib/workitem/get_global_size.cl
M libclc/amdgcn-amdhsa/lib/workitem/get_local_size.cl
M libclc/amdgcn-amdhsa/lib/workitem/get_num_groups.cl
M libclc/amdgcn/lib/math/fmax.cl
M libclc/amdgcn/lib/math/fmin.cl
M libclc/amdgcn/lib/mem_fence/fence.cl
M libclc/amdgcn/lib/synchronization/barrier.cl
M libclc/amdgcn/lib/workitem/get_global_offset.cl
M libclc/amdgcn/lib/workitem/get_global_size.cl
M libclc/amdgcn/lib/workitem/get_group_id.cl
M libclc/amdgcn/lib/workitem/get_local_id.cl
M libclc/amdgcn/lib/workitem/get_local_size.cl
M libclc/amdgcn/lib/workitem/get_num_groups.cl
M libclc/amdgcn/lib/workitem/get_work_dim.cl
M libclc/amdgpu/lib/math/half_exp.cl
M libclc/amdgpu/lib/math/half_exp10.cl
M libclc/amdgpu/lib/math/half_exp2.cl
M libclc/amdgpu/lib/math/half_log.cl
M libclc/amdgpu/lib/math/half_log10.cl
M libclc/amdgpu/lib/math/half_log2.cl
M libclc/amdgpu/lib/math/half_native_unary.inc
M libclc/amdgpu/lib/math/half_recip.cl
M libclc/amdgpu/lib/math/half_rsqrt.cl
M libclc/amdgpu/lib/math/half_sqrt.cl
M libclc/amdgpu/lib/math/native_exp.cl
M libclc/amdgpu/lib/math/native_exp.inc
M libclc/amdgpu/lib/math/native_log.cl
M libclc/amdgpu/lib/math/native_log.inc
M libclc/amdgpu/lib/math/native_log10.cl
M libclc/amdgpu/lib/math/native_log10.inc
M libclc/clc/include/clc/clc_as_type.h
M libclc/clc/include/clc/clc_convert.h
M libclc/clc/include/clc/clcfunc.h
M libclc/clc/include/clc/clcmacro.h
M libclc/clc/include/clc/clctypes.h
M libclc/clc/include/clc/common/clc_degrees.h
M libclc/clc/include/clc/common/clc_radians.h
M libclc/clc/include/clc/common/clc_sign.h
M libclc/clc/include/clc/common/clc_smoothstep.h
M libclc/clc/include/clc/common/clc_smoothstep.inc
M libclc/clc/include/clc/float/definitions.h
M libclc/clc/include/clc/geometric/clc_dot.h
M libclc/clc/include/clc/geometric/clc_dot.inc
M libclc/clc/include/clc/geometric/floatn.inc
M libclc/clc/include/clc/integer/clc_abs.h
M libclc/clc/include/clc/integer/clc_abs.inc
M libclc/clc/include/clc/integer/clc_abs_diff.h
M libclc/clc/include/clc/integer/clc_abs_diff.inc
M libclc/clc/include/clc/integer/clc_add_sat.h
M libclc/clc/include/clc/integer/clc_clz.h
M libclc/clc/include/clc/integer/clc_hadd.h
M libclc/clc/include/clc/integer/clc_mad24.h
M libclc/clc/include/clc/integer/clc_mad_hi.h
M libclc/clc/include/clc/integer/clc_mad_sat.h
M libclc/clc/include/clc/integer/clc_mul24.h
M libclc/clc/include/clc/integer/clc_mul_hi.h
M libclc/clc/include/clc/integer/clc_popcount.h
M libclc/clc/include/clc/integer/clc_rhadd.h
M libclc/clc/include/clc/integer/clc_rotate.h
M libclc/clc/include/clc/integer/clc_sub_sat.h
M libclc/clc/include/clc/integer/clc_upsample.h
M libclc/clc/include/clc/integer/definitions.h
M libclc/clc/include/clc/integer/gentype.inc
M libclc/clc/include/clc/integer/gentype24.inc
M libclc/clc/include/clc/internal/clc.h
M libclc/clc/include/clc/internal/math/clc_sw_fma.h
M libclc/clc/include/clc/math/binary_decl_with_scalar_second_arg.inc
M libclc/clc/include/clc/math/clc_ceil.h
M libclc/clc/include/clc/math/clc_copysign.h
M libclc/clc/include/clc/math/clc_fabs.h
M libclc/clc/include/clc/math/clc_floor.h
M libclc/clc/include/clc/math/clc_fma.h
M libclc/clc/include/clc/math/clc_frexp.h
M libclc/clc/include/clc/math/clc_hypot.h
M libclc/clc/include/clc/math/clc_ldexp.h
M libclc/clc/include/clc/math/clc_ldexp.inc
M libclc/clc/include/clc/math/clc_log.h
M libclc/clc/include/clc/math/clc_log10.h
M libclc/clc/include/clc/math/clc_log2.h
M libclc/clc/include/clc/math/clc_mad.h
M libclc/clc/include/clc/math/clc_modf.h
M libclc/clc/include/clc/math/clc_nan.h
M libclc/clc/include/clc/math/clc_nan.inc
M libclc/clc/include/clc/math/clc_nextafter.h
M libclc/clc/include/clc/math/clc_rint.h
M libclc/clc/include/clc/math/clc_round.h
M libclc/clc/include/clc/math/clc_rsqrt.h
M libclc/clc/include/clc/math/clc_sqrt.h
M libclc/clc/include/clc/math/clc_trunc.h
M libclc/clc/include/clc/math/gentype.inc
M libclc/clc/include/clc/math/unary_builtin.inc
M libclc/clc/include/clc/math/unary_decl.inc
M libclc/clc/include/clc/math/unary_decl_with_int_ptr.inc
M libclc/clc/include/clc/math/unary_decl_with_ptr.inc
M libclc/clc/include/clc/math/unary_def_with_int_ptr.inc
M libclc/clc/include/clc/math/unary_def_with_ptr.inc
M libclc/clc/include/clc/math/unary_intrin.inc
M libclc/clc/include/clc/relational/binary_decl.inc
M libclc/clc/include/clc/relational/clc_all.h
M libclc/clc/include/clc/relational/clc_any.h
M libclc/clc/include/clc/relational/clc_isequal.h
M libclc/clc/include/clc/relational/clc_isfinite.h
M libclc/clc/include/clc/relational/clc_isgreater.h
M libclc/clc/include/clc/relational/clc_isgreaterequal.h
M libclc/clc/include/clc/relational/clc_isinf.h
M libclc/clc/include/clc/relational/clc_isless.h
M libclc/clc/include/clc/relational/clc_islessequal.h
M libclc/clc/include/clc/relational/clc_islessgreater.h
M libclc/clc/include/clc/relational/clc_isnan.h
M libclc/clc/include/clc/relational/clc_isnormal.h
M libclc/clc/include/clc/relational/clc_isnotequal.h
M libclc/clc/include/clc/relational/clc_isordered.h
M libclc/clc/include/clc/relational/clc_isunordered.h
M libclc/clc/include/clc/relational/clc_select.h
M libclc/clc/include/clc/relational/clc_select_decl.inc
M libclc/clc/include/clc/relational/clc_select_impl.inc
M libclc/clc/include/clc/relational/clc_signbit.h
M libclc/clc/include/clc/relational/floatn.inc
M libclc/clc/include/clc/relational/relational.h
M libclc/clc/include/clc/relational/unary_decl.inc
M libclc/clc/include/clc/shared/binary_decl.inc
M libclc/clc/include/clc/shared/binary_def.inc
M libclc/clc/include/clc/shared/clc_clamp.h
M libclc/clc/include/clc/shared/clc_clamp.inc
M libclc/clc/include/clc/shared/clc_max.h
M libclc/clc/include/clc/shared/clc_max.inc
M libclc/clc/include/clc/shared/clc_min.h
M libclc/clc/include/clc/shared/clc_min.inc
M libclc/clc/include/clc/shared/ternary_decl.inc
M libclc/clc/include/clc/shared/ternary_def.inc
M libclc/clc/include/clc/shared/unary_decl.inc
M libclc/clc/include/clc/shared/unary_def.inc
M libclc/clc/include/clc/utils.h
M libclc/clc/lib/generic/common/clc_sign.cl
M libclc/clc/lib/generic/common/clc_sign.inc
M libclc/clc/lib/generic/geometric/clc_dot.cl
M libclc/clc/lib/generic/integer/clc_abs.cl
M libclc/clc/lib/generic/integer/clc_abs.inc
M libclc/clc/lib/generic/integer/clc_abs_diff.cl
M libclc/clc/lib/generic/integer/clc_abs_diff.inc
M libclc/clc/lib/generic/integer/clc_add_sat.cl
M libclc/clc/lib/generic/integer/clc_clz.cl
M libclc/clc/lib/generic/integer/clc_hadd.cl
M libclc/clc/lib/generic/integer/clc_hadd.inc
M libclc/clc/lib/generic/integer/clc_mad24.cl
M libclc/clc/lib/generic/integer/clc_mad24.inc
M libclc/clc/lib/generic/integer/clc_mad_sat.cl
M libclc/clc/lib/generic/integer/clc_mul24.cl
M libclc/clc/lib/generic/integer/clc_mul24.inc
M libclc/clc/lib/generic/integer/clc_mul_hi.cl
M libclc/clc/lib/generic/integer/clc_popcount.cl
M libclc/clc/lib/generic/integer/clc_rhadd.cl
M libclc/clc/lib/generic/integer/clc_rhadd.inc
M libclc/clc/lib/generic/integer/clc_rotate.cl
M libclc/clc/lib/generic/integer/clc_rotate.inc
M libclc/clc/lib/generic/integer/clc_sub_sat.cl
M libclc/clc/lib/generic/integer/clc_upsample.cl
M libclc/clc/lib/generic/math/clc_ceil.cl
M libclc/clc/lib/generic/math/clc_copysign.cl
M libclc/clc/lib/generic/math/clc_fabs.cl
M libclc/clc/lib/generic/math/clc_floor.cl
M libclc/clc/lib/generic/math/clc_fma.cl
M libclc/clc/lib/generic/math/clc_fma.inc
M libclc/clc/lib/generic/math/clc_log.cl
M libclc/clc/lib/generic/math/clc_mad.cl
M libclc/clc/lib/generic/math/clc_mad.inc
M libclc/clc/lib/generic/math/clc_nan.cl
M libclc/clc/lib/generic/math/clc_nan.inc
M libclc/clc/lib/generic/math/clc_nextafter.cl
M libclc/clc/lib/generic/math/clc_rint.cl
M libclc/clc/lib/generic/math/clc_round.cl
M libclc/clc/lib/generic/math/clc_rsqrt.inc
M libclc/clc/lib/generic/math/clc_trunc.cl
M libclc/clc/lib/generic/relational/clc_all.cl
M libclc/clc/lib/generic/relational/clc_any.cl
M libclc/clc/lib/generic/relational/clc_isequal.cl
M libclc/clc/lib/generic/relational/clc_isfinite.cl
M libclc/clc/lib/generic/relational/clc_isgreater.cl
M libclc/clc/lib/generic/relational/clc_isgreaterequal.cl
M libclc/clc/lib/generic/relational/clc_isinf.cl
M libclc/clc/lib/generic/relational/clc_isless.cl
M libclc/clc/lib/generic/relational/clc_islessequal.cl
M libclc/clc/lib/generic/relational/clc_islessgreater.cl
M libclc/clc/lib/generic/relational/clc_isnan.cl
M libclc/clc/lib/generic/relational/clc_isnormal.cl
M libclc/clc/lib/generic/relational/clc_isnotequal.cl
M libclc/clc/lib/generic/relational/clc_isordered.cl
M libclc/clc/lib/generic/relational/clc_isunordered.cl
M libclc/clc/lib/generic/relational/clc_select.cl
M libclc/clc/lib/generic/relational/clc_signbit.cl
M libclc/clc/lib/generic/shared/clc_clamp.cl
M libclc/clc/lib/generic/shared/clc_clamp.inc
M libclc/clc/lib/generic/shared/clc_max.cl
M libclc/clc/lib/generic/shared/clc_max.inc
M libclc/clc/lib/generic/shared/clc_min.cl
M libclc/clc/lib/generic/shared/clc_min.inc
M libclc/clc/lib/r600/math/clc_rsqrt_override.cl
M libclc/clc/lib/spirv/math/clc_runtime_has_hw_fma32.cl
M libclc/clspv/lib/math/fma.cl
M libclc/clspv/lib/shared/vstore_half.cl
M libclc/clspv/lib/shared/vstore_half.inc
M libclc/generic/include/clc/as_type.h
M libclc/generic/include/clc/async/async_work_group_copy.h
M libclc/generic/include/clc/async/async_work_group_copy.inc
M libclc/generic/include/clc/async/async_work_group_strided_copy.h
M libclc/generic/include/clc/async/async_work_group_strided_copy.inc
M libclc/generic/include/clc/async/gentype.inc
M libclc/generic/include/clc/async/prefetch.h
M libclc/generic/include/clc/async/prefetch.inc
M libclc/generic/include/clc/async/wait_group_events.h
M libclc/generic/include/clc/atom_decl_int32.inc
M libclc/generic/include/clc/atom_decl_int64.inc
M libclc/generic/include/clc/atomic/atomic_add.h
M libclc/generic/include/clc/atomic/atomic_and.h
M libclc/generic/include/clc/atomic/atomic_cmpxchg.h
M libclc/generic/include/clc/atomic/atomic_dec.h
M libclc/generic/include/clc/atomic/atomic_decl.inc
M libclc/generic/include/clc/atomic/atomic_inc.h
M libclc/generic/include/clc/atomic/atomic_max.h
M libclc/generic/include/clc/atomic/atomic_min.h
M libclc/generic/include/clc/atomic/atomic_or.h
M libclc/generic/include/clc/atomic/atomic_sub.h
M libclc/generic/include/clc/atomic/atomic_xchg.h
M libclc/generic/include/clc/atomic/atomic_xor.h
M libclc/generic/include/clc/cl_khr_global_int32_base_atomics/atom_add.h
M libclc/generic/include/clc/cl_khr_global_int32_base_atomics/atom_cmpxchg.h
M libclc/generic/include/clc/cl_khr_global_int32_base_atomics/atom_dec.h
M libclc/generic/include/clc/cl_khr_global_int32_base_atomics/atom_inc.h
M libclc/generic/include/clc/cl_khr_global_int32_base_atomics/atom_sub.h
M libclc/generic/include/clc/cl_khr_global_int32_base_atomics/atom_xchg.h
M libclc/generic/include/clc/cl_khr_global_int32_extended_atomics/atom_and.h
M libclc/generic/include/clc/cl_khr_global_int32_extended_atomics/atom_max.h
M libclc/generic/include/clc/cl_khr_global_int32_extended_atomics/atom_min.h
M libclc/generic/include/clc/cl_khr_global_int32_extended_atomics/atom_or.h
M libclc/generic/include/clc/cl_khr_global_int32_extended_atomics/atom_xor.h
M libclc/generic/include/clc/cl_khr_int64_base_atomics/atom_add.h
M libclc/generic/include/clc/cl_khr_int64_base_atomics/atom_cmpxchg.h
M libclc/generic/include/clc/cl_khr_int64_base_atomics/atom_dec.h
M libclc/generic/include/clc/cl_khr_int64_base_atomics/atom_inc.h
M libclc/generic/include/clc/cl_khr_int64_base_atomics/atom_sub.h
M libclc/generic/include/clc/cl_khr_int64_base_atomics/atom_xchg.h
M libclc/generic/include/clc/cl_khr_int64_extended_atomics/atom_and.h
M libclc/generic/include/clc/cl_khr_int64_extended_atomics/atom_max.h
M libclc/generic/include/clc/cl_khr_int64_extended_atomics/atom_min.h
M libclc/generic/include/clc/cl_khr_int64_extended_atomics/atom_or.h
M libclc/generic/include/clc/cl_khr_int64_extended_atomics/atom_xor.h
M libclc/generic/include/clc/cl_khr_local_int32_base_atomics/atom_add.h
M libclc/generic/include/clc/cl_khr_local_int32_base_atomics/atom_cmpxchg.h
M libclc/generic/include/clc/cl_khr_local_int32_base_atomics/atom_dec.h
M libclc/generic/include/clc/cl_khr_local_int32_base_atomics/atom_inc.h
M libclc/generic/include/clc/cl_khr_local_int32_base_atomics/atom_sub.h
M libclc/generic/include/clc/cl_khr_local_int32_base_atomics/atom_xchg.h
M libclc/generic/include/clc/cl_khr_local_int32_extended_atomics/atom_and.h
M libclc/generic/include/clc/cl_khr_local_int32_extended_atomics/atom_max.h
M libclc/generic/include/clc/cl_khr_local_int32_extended_atomics/atom_min.h
M libclc/generic/include/clc/cl_khr_local_int32_extended_atomics/atom_or.h
M libclc/generic/include/clc/cl_khr_local_int32_extended_atomics/atom_xor.h
M libclc/generic/include/clc/clc.h
M libclc/generic/include/clc/clcmacros.h
M libclc/generic/include/clc/common/mix.h
M libclc/generic/include/clc/common/mix.inc
M libclc/generic/include/clc/common/sign.h
M libclc/generic/include/clc/convert.h
M libclc/generic/include/clc/explicit_fence/explicit_memory_fence.h
M libclc/generic/include/clc/geometric/cross.h
M libclc/generic/include/clc/geometric/distance.h
M libclc/generic/include/clc/geometric/dot.h
M libclc/generic/include/clc/geometric/dot.inc
M libclc/generic/include/clc/geometric/length.h
M libclc/generic/include/clc/geometric/length.inc
M libclc/generic/include/clc/geometric/normalize.h
M libclc/generic/include/clc/geometric/normalize.inc
M libclc/generic/include/clc/image/image.h
M libclc/generic/include/clc/image/image_defines.h
M libclc/generic/include/clc/integer/abs.h
M libclc/generic/include/clc/integer/abs.inc
M libclc/generic/include/clc/integer/abs_diff.h
M libclc/generic/include/clc/integer/abs_diff.inc
M libclc/generic/include/clc/integer/add_sat.h
M libclc/generic/include/clc/integer/add_sat.inc
M libclc/generic/include/clc/integer/clz.h
M libclc/generic/include/clc/integer/hadd.h
M libclc/generic/include/clc/integer/integer-gentype.inc
M libclc/generic/include/clc/integer/mad24.h
M libclc/generic/include/clc/integer/mad_hi.h
M libclc/generic/include/clc/integer/mad_sat.h
M libclc/generic/include/clc/integer/mad_sat.inc
M libclc/generic/include/clc/integer/mul24.h
M libclc/generic/include/clc/integer/mul_hi.h
M libclc/generic/include/clc/integer/popcount.h
M libclc/generic/include/clc/integer/rhadd.h
M libclc/generic/include/clc/integer/rotate.h
M libclc/generic/include/clc/integer/rotate.inc
M libclc/generic/include/clc/integer/sub_sat.h
M libclc/generic/include/clc/integer/sub_sat.inc
M libclc/generic/include/clc/integer/unary.inc
M libclc/generic/include/clc/integer/upsample.h
M libclc/generic/include/clc/math/acos.h
M libclc/generic/include/clc/math/asin.h
M libclc/generic/include/clc/math/binary_decl_tt.inc
M libclc/generic/include/clc/math/ceil.h
M libclc/generic/include/clc/math/copysign.h
M libclc/generic/include/clc/math/cos.h
M libclc/generic/include/clc/math/cospi.h
M libclc/generic/include/clc/math/erf.h
M libclc/generic/include/clc/math/erfc.h
M libclc/generic/include/clc/math/exp.h
M libclc/generic/include/clc/math/exp10.h
M libclc/generic/include/clc/math/expm1.h
M libclc/generic/include/clc/math/fabs.h
M libclc/generic/include/clc/math/fdim.h
M libclc/generic/include/clc/math/floor.h
M libclc/generic/include/clc/math/fma.h
M libclc/generic/include/clc/math/fmax.h
M libclc/generic/include/clc/math/fmin.h
M libclc/generic/include/clc/math/fmod.h
M libclc/generic/include/clc/math/frexp.h
M libclc/generic/include/clc/math/frexp.inc
M libclc/generic/include/clc/math/half_cos.h
M libclc/generic/include/clc/math/half_divide.h
M libclc/generic/include/clc/math/half_exp.h
M libclc/generic/include/clc/math/half_exp10.h
M libclc/generic/include/clc/math/half_exp2.h
M libclc/generic/include/clc/math/half_log.h
M libclc/generic/include/clc/math/half_log10.h
M libclc/generic/include/clc/math/half_log2.h
M libclc/generic/include/clc/math/half_powr.h
M libclc/generic/include/clc/math/half_recip.h
M libclc/generic/include/clc/math/half_sin.h
M libclc/generic/include/clc/math/half_tan.h
M libclc/generic/include/clc/math/hypot.h
M libclc/generic/include/clc/math/ilogb.h
M libclc/generic/include/clc/math/ilogb.inc
M libclc/generic/include/clc/math/lgamma.h
M libclc/generic/include/clc/math/lgamma_r.h
M libclc/generic/include/clc/math/lgamma_r.inc
M libclc/generic/include/clc/math/log10.h
M libclc/generic/include/clc/math/logb.h
M libclc/generic/include/clc/math/mad.h
M libclc/generic/include/clc/math/maxmag.h
M libclc/generic/include/clc/math/minmag.h
M libclc/generic/include/clc/math/nan.h
M libclc/generic/include/clc/math/nan.inc
M libclc/generic/include/clc/math/native_cos.h
M libclc/generic/include/clc/math/native_divide.h
M libclc/generic/include/clc/math/native_exp.h
M libclc/generic/include/clc/math/native_exp10.h
M libclc/generic/include/clc/math/native_exp2.h
M libclc/generic/include/clc/math/native_log10.h
M libclc/generic/include/clc/math/native_powr.h
M libclc/generic/include/clc/math/native_recip.h
M libclc/generic/include/clc/math/native_rsqrt.h
M libclc/generic/include/clc/math/native_sin.h
M libclc/generic/include/clc/math/native_sqrt.h
M libclc/generic/include/clc/math/native_tan.h
M libclc/generic/include/clc/math/nextafter.h
M libclc/generic/include/clc/math/pow.h
M libclc/generic/include/clc/math/pown.h
M libclc/generic/include/clc/math/pown.inc
M libclc/generic/include/clc/math/powr.h
M libclc/generic/include/clc/math/remainder.h
M libclc/generic/include/clc/math/remquo.h
M libclc/generic/include/clc/math/remquo.inc
M libclc/generic/include/clc/math/rint.h
M libclc/generic/include/clc/math/rootn.h
M libclc/generic/include/clc/math/rootn.inc
M libclc/generic/include/clc/math/round.h
M libclc/generic/include/clc/math/rsqrt.h
M libclc/generic/include/clc/math/sin.h
M libclc/generic/include/clc/math/sincos.h
M libclc/generic/include/clc/math/sincos.inc
M libclc/generic/include/clc/math/sinpi.h
M libclc/generic/include/clc/math/sqrt.h
M libclc/generic/include/clc/math/tan.h
M libclc/generic/include/clc/math/tanpi.h
M libclc/generic/include/clc/math/tgamma.h
M libclc/generic/include/clc/math/trunc.h
M libclc/generic/include/clc/misc/shuffle.h
M libclc/generic/include/clc/misc/shuffle2.h
M libclc/generic/include/clc/relational/all.h
M libclc/generic/include/clc/relational/any.h
M libclc/generic/include/clc/relational/isequal.h
M libclc/generic/include/clc/relational/isfinite.h
M libclc/generic/include/clc/relational/isgreater.h
M libclc/generic/include/clc/relational/isgreaterequal.h
M libclc/generic/include/clc/relational/isinf.h
M libclc/generic/include/clc/relational/isless.h
M libclc/generic/include/clc/relational/islessequal.h
M libclc/generic/include/clc/relational/islessgreater.h
M libclc/generic/include/clc/relational/isnan.h
M libclc/generic/include/clc/relational/isnormal.h
M libclc/generic/include/clc/relational/isnotequal.h
M libclc/generic/include/clc/relational/isordered.h
M libclc/generic/include/clc/relational/isunordered.h
M libclc/generic/include/clc/relational/select.h
M libclc/generic/include/clc/relational/signbit.h
M libclc/generic/include/clc/shared/clamp.h
M libclc/generic/include/clc/shared/clamp.inc
M libclc/generic/include/clc/shared/max.h
M libclc/generic/include/clc/shared/max.inc
M libclc/generic/include/clc/shared/min.h
M libclc/generic/include/clc/shared/min.inc
M libclc/generic/include/clc/shared/vload.h
M libclc/generic/include/clc/shared/vstore.h
M libclc/generic/include/clc/synchronization/barrier.h
M libclc/generic/include/clc/synchronization/cl_mem_fence_flags.h
M libclc/generic/include/clc/workitem/get_global_id.h
M libclc/generic/include/clc/workitem/get_global_offset.h
M libclc/generic/include/clc/workitem/get_global_size.h
M libclc/generic/include/clc/workitem/get_group_id.h
M libclc/generic/include/clc/workitem/get_local_id.h
M libclc/generic/include/clc/workitem/get_local_size.h
M libclc/generic/include/clc/workitem/get_num_groups.h
M libclc/generic/include/clc/workitem/get_work_dim.h
M libclc/generic/include/math/clc_exp10.h
M libclc/generic/include/math/clc_fmod.h
M libclc/generic/include/math/clc_pow.h
M libclc/generic/include/math/clc_pown.h
M libclc/generic/include/math/clc_pown.inc
M libclc/generic/include/math/clc_powr.h
M libclc/generic/include/math/clc_remainder.h
M libclc/generic/include/math/clc_remquo.h
M libclc/generic/include/math/clc_rootn.h
M libclc/generic/include/math/clc_rootn.inc
M libclc/generic/include/math/clc_tan.h
M libclc/generic/include/math/clc_tanpi.h
M libclc/generic/lib/async/async_work_group_copy.cl
M libclc/generic/lib/async/async_work_group_copy.inc
M libclc/generic/lib/async/async_work_group_strided_copy.cl
M libclc/generic/lib/async/async_work_group_strided_copy.inc
M libclc/generic/lib/async/prefetch.cl
M libclc/generic/lib/async/prefetch.inc
M libclc/generic/lib/async/wait_group_events.cl
M libclc/generic/lib/atom_int32_binary.inc
M libclc/generic/lib/atomic/atomic_add.cl
M libclc/generic/lib/atomic/atomic_and.cl
M libclc/generic/lib/atomic/atomic_cmpxchg.cl
M libclc/generic/lib/atomic/atomic_dec.cl
M libclc/generic/lib/atomic/atomic_inc.cl
M libclc/generic/lib/atomic/atomic_max.cl
M libclc/generic/lib/atomic/atomic_min.cl
M libclc/generic/lib/atomic/atomic_or.cl
M libclc/generic/lib/atomic/atomic_sub.cl
M libclc/generic/lib/atomic/atomic_xchg.cl
M libclc/generic/lib/atomic/atomic_xor.cl
M libclc/generic/lib/cl_khr_global_int32_base_atomics/atom_add.cl
M libclc/generic/lib/cl_khr_global_int32_base_atomics/atom_cmpxchg.cl
M libclc/generic/lib/cl_khr_global_int32_base_atomics/atom_dec.cl
M libclc/generic/lib/cl_khr_global_int32_base_atomics/atom_inc.cl
M libclc/generic/lib/cl_khr_global_int32_base_atomics/atom_sub.cl
M libclc/generic/lib/cl_khr_global_int32_base_atomics/atom_xchg.cl
M libclc/generic/lib/cl_khr_global_int32_extended_atomics/atom_and.cl
M libclc/generic/lib/cl_khr_global_int32_extended_atomics/atom_max.cl
M libclc/generic/lib/cl_khr_global_int32_extended_atomics/atom_min.cl
M libclc/generic/lib/cl_khr_global_int32_extended_atomics/atom_or.cl
M libclc/generic/lib/cl_khr_global_int32_extended_atomics/atom_xor.cl
M libclc/generic/lib/cl_khr_int64_base_atomics/atom_add.cl
M libclc/generic/lib/cl_khr_int64_base_atomics/atom_cmpxchg.cl
M libclc/generic/lib/cl_khr_int64_base_atomics/atom_dec.cl
M libclc/generic/lib/cl_khr_int64_base_atomics/atom_inc.cl
M libclc/generic/lib/cl_khr_int64_base_atomics/atom_sub.cl
M libclc/generic/lib/cl_khr_int64_base_atomics/atom_xchg.cl
M libclc/generic/lib/cl_khr_int64_extended_atomics/atom_and.cl
M libclc/generic/lib/cl_khr_int64_extended_atomics/atom_max.cl
M libclc/generic/lib/cl_khr_int64_extended_atomics/atom_min.cl
M libclc/generic/lib/cl_khr_int64_extended_atomics/atom_or.cl
M libclc/generic/lib/cl_khr_int64_extended_atomics/atom_xor.cl
M libclc/generic/lib/cl_khr_local_int32_base_atomics/atom_add.cl
M libclc/generic/lib/cl_khr_local_int32_base_atomics/atom_cmpxchg.cl
M libclc/generic/lib/cl_khr_local_int32_base_atomics/atom_dec.cl
M libclc/generic/lib/cl_khr_local_int32_base_atomics/atom_inc.cl
M libclc/generic/lib/cl_khr_local_int32_base_atomics/atom_sub.cl
M libclc/generic/lib/cl_khr_local_int32_base_atomics/atom_xchg.cl
M libclc/generic/lib/cl_khr_local_int32_extended_atomics/atom_and.cl
M libclc/generic/lib/cl_khr_local_int32_extended_atomics/atom_max.cl
M libclc/generic/lib/cl_khr_local_int32_extended_atomics/atom_min.cl
M libclc/generic/lib/cl_khr_local_int32_extended_atomics/atom_or.cl
M libclc/generic/lib/cl_khr_local_int32_extended_atomics/atom_xor.cl
M libclc/generic/lib/clc_unary.inc
M libclc/generic/lib/common/mix.cl
M libclc/generic/lib/common/mix.inc
M libclc/generic/lib/common/sign.cl
M libclc/generic/lib/geometric/cross.cl
M libclc/generic/lib/geometric/dot.cl
M libclc/generic/lib/integer/abs.cl
M libclc/generic/lib/integer/abs.inc
M libclc/generic/lib/integer/abs_diff.cl
M libclc/generic/lib/integer/abs_diff.inc
M libclc/generic/lib/integer/add_sat.cl
M libclc/generic/lib/integer/clz.cl
M libclc/generic/lib/integer/hadd.cl
M libclc/generic/lib/integer/mad24.cl
M libclc/generic/lib/integer/mad_hi.cl
M libclc/generic/lib/integer/mad_sat.cl
M libclc/generic/lib/integer/mul24.cl
M libclc/generic/lib/integer/mul_hi.cl
M libclc/generic/lib/integer/popcount.cl
M libclc/generic/lib/integer/rhadd.cl
M libclc/generic/lib/integer/rotate.cl
M libclc/generic/lib/integer/sub_sat.cl
M libclc/generic/lib/integer/upsample.cl
M libclc/generic/lib/math/binary_impl.inc
M libclc/generic/lib/math/ceil.cl
M libclc/generic/lib/math/clc_sw_binary.inc
M libclc/generic/lib/math/clc_sw_unary.inc
M libclc/generic/lib/math/copysign.cl
M libclc/generic/lib/math/exp10.cl
M libclc/generic/lib/math/expm1.cl
M libclc/generic/lib/math/fabs.cl
M libclc/generic/lib/math/fdim.cl
M libclc/generic/lib/math/floor.cl
M libclc/generic/lib/math/fma.cl
M libclc/generic/lib/math/fmax.cl
M libclc/generic/lib/math/fmax.inc
M libclc/generic/lib/math/fmin.cl
M libclc/generic/lib/math/fmin.inc
M libclc/generic/lib/math/fmod.cl
M libclc/generic/lib/math/frexp.cl
M libclc/generic/lib/math/half_binary.inc
M libclc/generic/lib/math/half_cos.cl
M libclc/generic/lib/math/half_divide.cl
M libclc/generic/lib/math/half_exp.cl
M libclc/generic/lib/math/half_exp10.cl
M libclc/generic/lib/math/half_exp2.cl
M libclc/generic/lib/math/half_log.cl
M libclc/generic/lib/math/half_log10.cl
M libclc/generic/lib/math/half_log2.cl
M libclc/generic/lib/math/half_powr.cl
M libclc/generic/lib/math/half_recip.cl
M libclc/generic/lib/math/half_rsqrt.cl
M libclc/generic/lib/math/half_sin.cl
M libclc/generic/lib/math/half_sqrt.cl
M libclc/generic/lib/math/half_tan.cl
M libclc/generic/lib/math/half_unary.inc
M libclc/generic/lib/math/hypot.cl
M libclc/generic/lib/math/log.cl
M libclc/generic/lib/math/log10.cl
M libclc/generic/lib/math/log2.cl
M libclc/generic/lib/math/logb.cl
M libclc/generic/lib/math/mad.cl
M libclc/generic/lib/math/maxmag.cl
M libclc/generic/lib/math/maxmag.inc
M libclc/generic/lib/math/minmag.cl
M libclc/generic/lib/math/minmag.inc
M libclc/generic/lib/math/nan.cl
M libclc/generic/lib/math/nan.inc
M libclc/generic/lib/math/native_cos.cl
M libclc/generic/lib/math/native_divide.cl
M libclc/generic/lib/math/native_divide.inc
M libclc/generic/lib/math/native_exp.cl
M libclc/generic/lib/math/native_exp10.cl
M libclc/generic/lib/math/native_exp10.inc
M libclc/generic/lib/math/native_exp2.cl
M libclc/generic/lib/math/native_log10.cl
M libclc/generic/lib/math/native_powr.cl
M libclc/generic/lib/math/native_powr.inc
M libclc/generic/lib/math/native_recip.cl
M libclc/generic/lib/math/native_recip.inc
M libclc/generic/lib/math/native_rsqrt.cl
M libclc/generic/lib/math/native_rsqrt.inc
M libclc/generic/lib/math/native_sin.cl
M libclc/generic/lib/math/native_sqrt.cl
M libclc/generic/lib/math/native_tan.cl
M libclc/generic/lib/math/native_tan.inc
M libclc/generic/lib/math/nextafter.cl
M libclc/generic/lib/math/pow.cl
M libclc/generic/lib/math/pown.cl
M libclc/generic/lib/math/pown.inc
M libclc/generic/lib/math/powr.cl
M libclc/generic/lib/math/remainder.cl
M libclc/generic/lib/math/remquo.cl
M libclc/generic/lib/math/remquo.inc
M libclc/generic/lib/math/rint.cl
M libclc/generic/lib/math/rootn.cl
M libclc/generic/lib/math/rootn.inc
M libclc/generic/lib/math/round.cl
M libclc/generic/lib/math/rsqrt.cl
M libclc/generic/lib/math/sincos.cl
M libclc/generic/lib/math/sincos.inc
M libclc/generic/lib/math/tan.cl
M libclc/generic/lib/math/tanpi.cl
M libclc/generic/lib/math/trunc.cl
M libclc/generic/lib/misc/shuffle.cl
M libclc/generic/lib/misc/shuffle2.cl
M libclc/generic/lib/relational/all.cl
M libclc/generic/lib/relational/any.cl
M libclc/generic/lib/relational/binary_def.inc
M libclc/generic/lib/relational/isequal.cl
M libclc/generic/lib/relational/isfinite.cl
M libclc/generic/lib/relational/isgreater.cl
M libclc/generic/lib/relational/isgreaterequal.cl
M libclc/generic/lib/relational/isinf.cl
M libclc/generic/lib/relational/isless.cl
M libclc/generic/lib/relational/islessequal.cl
M libclc/generic/lib/relational/islessgreater.cl
M libclc/generic/lib/relational/isnan.cl
M libclc/generic/lib/relational/isnormal.cl
M libclc/generic/lib/relational/isnotequal.cl
M libclc/generic/lib/relational/isordered.cl
M libclc/generic/lib/relational/isunordered.cl
M libclc/generic/lib/relational/select.cl
M libclc/generic/lib/relational/signbit.cl
M libclc/generic/lib/relational/unary_def.inc
M libclc/generic/lib/shared/clamp.cl
M libclc/generic/lib/shared/clamp.inc
M libclc/generic/lib/shared/max.cl
M libclc/generic/lib/shared/max.inc
M libclc/generic/lib/shared/min.cl
M libclc/generic/lib/shared/min.inc
M libclc/generic/lib/shared/vload.cl
M libclc/generic/lib/shared/vload_half.inc
M libclc/generic/lib/shared/vstore.cl
M libclc/generic/lib/shared/vstore_half.inc
M libclc/generic/lib/workitem/get_global_id.cl
M libclc/generic/lib/workitem/get_global_size.cl
M libclc/ptx-nvidiacl/lib/mem_fence/fence.cl
M libclc/ptx-nvidiacl/lib/synchronization/barrier.cl
M libclc/ptx-nvidiacl/lib/workitem/get_global_id.cl
M libclc/ptx-nvidiacl/lib/workitem/get_group_id.cl
M libclc/ptx-nvidiacl/lib/workitem/get_local_id.cl
M libclc/ptx-nvidiacl/lib/workitem/get_local_size.cl
M libclc/ptx-nvidiacl/lib/workitem/get_num_groups.cl
M libclc/r600/lib/image/get_image_channel_data_type.cl
M libclc/r600/lib/image/get_image_channel_order.cl
M libclc/r600/lib/image/get_image_depth.cl
M libclc/r600/lib/image/get_image_dim.cl
M libclc/r600/lib/image/get_image_height.cl
M libclc/r600/lib/image/get_image_width.cl
M libclc/r600/lib/image/read_imagef.cl
M libclc/r600/lib/image/read_imagei.cl
M libclc/r600/lib/image/read_imageui.cl
M libclc/r600/lib/image/write_imagef.cl
M libclc/r600/lib/image/write_imagei.cl
M libclc/r600/lib/image/write_imageui.cl
M libclc/r600/lib/math/fmax.cl
M libclc/r600/lib/math/fmin.cl
M libclc/r600/lib/math/native_rsqrt.cl
M libclc/r600/lib/synchronization/barrier.cl
M libclc/r600/lib/workitem/get_global_offset.cl
M libclc/r600/lib/workitem/get_global_size.cl
M libclc/r600/lib/workitem/get_group_id.cl
M libclc/r600/lib/workitem/get_local_id.cl
M libclc/r600/lib/workitem/get_local_size.cl
M libclc/r600/lib/workitem/get_num_groups.cl
M libclc/r600/lib/workitem/get_work_dim.cl
M libclc/spirv/lib/math/fma.cl
M libclc/test/add_sat.cl
M libclc/test/as_type.cl
M libclc/test/convert.cl
M libclc/test/cos.cl
M libclc/test/cross.cl
M libclc/test/fabs.cl
M libclc/test/get_group_id.cl
M libclc/test/rsqrt.cl
M libclc/test/subsat.cl
M libclc/utils/prepare-builtins.cpp
Log Message:
-----------
[libclc] Add license headers to files missing them (#132239)
This commit bulk updates all '.h', '.cl', '.inc', and '.cpp' files to
add any missing license headers.
The remaining files are generally CMake, SOURCES, scripts, markdown,
etc.
There are still some '.ll' files which may benefit from a license
header. I can't find an example of an LLVM IR file with a license header
in the rest of LLVM, but unlike most other (sub)projects, libclc has
examples of LLVM IR as source files, compiled and built into the
library.
Commit: e2e776c867c691ec57eb4effc7dcc27d6a5f2c04
https://github.com/llvm/llvm-project/commit/e2e776c867c691ec57eb4effc7dcc27d6a5f2c04
Author: Csanád Hajdú <csanad.hajdu at arm.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp
A llvm/test/CodeGen/AArch64/execute-only-empty.ll
Log Message:
-----------
[AArch64] Always add PURECODE flag to empty .text if "+execute-only" is set (#132196)
Previously, the `SHF_AARCH64_PURECODE` section flag wasn't added to the
implicitly created `.text` section if the module didn't contain any
functions, because no other section had the flag set.
Now, the `SHF_AARCH64_PURECODE` is always added if the "+execute-only"
target feature is set for the module during compilation.
Commit: 4398a222ad0861ead5aeea66e76ac28757b6389d
https://github.com/llvm/llvm-project/commit/4398a222ad0861ead5aeea66e76ac28757b6389d
Author: Zichen Lu <mikaovo2000 at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/lib/Target/LLVM/NVVM/Target.cpp
Log Message:
-----------
[mlir][target] Adjust the start and end position of the moduleToObject timer (#132693)
We hope that the timer can be cleared normally when the target-format is
`offload`, so as to avoid output like this:
```
===-------------------------------------------------------------------------===
Miscellaneous Ungrouped Timers
===-------------------------------------------------------------------------===
---Wall Time--- --- Name ---
----- Timer for perf llvm-ir -> isa and isa -> binary.
...
```
Co-authored-by: Guray Ozen <guray.ozen at gmail.com>
Commit: df086650e1d7e439d41316e344cbbcd9c31ac6fa
https://github.com/llvm/llvm-project/commit/df086650e1d7e439d41316e344cbbcd9c31ac6fa
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineX86ShufflesRecursively - pull out getTargetLoweringInfo call. NFC.
Commit: 038cdd236f27bce41c566de89c35b00fdaf2b571
https://github.com/llvm/llvm-project/commit/038cdd236f27bce41c566de89c35b00fdaf2b571
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M flang-rt/CMakeLists.txt
M flang-rt/cmake/modules/AddFlangRT.cmake
A flang-rt/cmake/modules/HandleLibs.cmake
Log Message:
-----------
[flang-rt] Add support for using LLVM in-tree libc/libc++ (#131695)
Summary:
This patch adds an interface that uses an in-tree build of LLVM's libc
and libc++.
This is done using the `-DFLANG_RT_LIBC_PROVIDER=llvm` and
`-DFLANG_RT_LIBCXX_PROVIDER=llvm` options. Using `libc` works in terms
of CMake, but the LLVM libc is not yet complete enough to compile all
the files.
Commit: 63285065368f22894aea87a8d82880cc8b0e8267
https://github.com/llvm/llvm-project/commit/63285065368f22894aea87a8d82880cc8b0e8267
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Transforms/SimplifyFIROperations.cpp
A flang/test/Transforms/do_concurrent-to-do_loop-unodered.fir
Log Message:
-----------
[flang][fir] Add rewrite pattern to convert `fir.do_concurrent` to `fir.do_loop` (#132207)
Rewrites `fir.do_concurrent` ops to a corresponding nest of `fir.do_loop
... unordered` ops.
Commit: 63b5692bacd941f1b6b9010b70db4bcc327469b9
https://github.com/llvm/llvm-project/commit/63b5692bacd941f1b6b9010b70db4bcc327469b9
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libclc/generic/lib/gen_convert.py
Log Message:
-----------
[libclc] Relicense gen_convert.py (#132213)
Similar to work done in 82912fd6, this commit re-licenses both the
gen_convert.py script and the file it generates.
It previously possessed an MIT license, with three additional individual
copyrights. The file it generated was similar, but to only two of the
three individuals. LLVM's policy is not to accept contributions that
include in-source copyright notices [1]. I'm not aware whether the
individuals concerned signed the re-licensing agreement or not.
It takes the opportunity to update the description(s) in the header
files, since the previous comments were out of date.
[1]
https://llvm.org/docs/DeveloperPolicy.html#embedded-copyright-or-contributed-by-statements
Commit: 6a8606e99e399ccc68a89b1c22b396e00021d3fb
https://github.com/llvm/llvm-project/commit/6a8606e99e399ccc68a89b1c22b396e00021d3fb
Author: Luke Lau <luke at igalia.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[VPlan] Only store RecurKind + FastMathFlags in VPReductionRecipe. NFCI (#131300)
VPReductionRecipes take a RecurrenceDescriptor, but only use the
RecurKind and FastMathFlags in it when executing. This patch makes the
recipe more lightweight by stripping it to only take the latter two.
The motiviation for this is to simplify an upcoming patch to support
in-loop AnyOf reductions. For an in-loop AnyOf reduction we want to
create an Or reduction, and by using RecurKind we can create an
arbitrary reduction without needing a full RecurrenceDescriptor.
Commit: 66f957f40485ecacea68c608320a52bf1952ec66
https://github.com/llvm/llvm-project/commit/66f957f40485ecacea68c608320a52bf1952ec66
Author: Dhruv Srivastava <dhruv.srivastava at ibm.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M lldb/source/Host/common/Host.cpp
Log Message:
-----------
[lldb][AIX] clang-format for common Host.cpp (#132712)
This PR is in reference to porting LLDB on AIX.
Link to discussions on llvm discourse and github:
1. https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640
2. https://github.com/llvm/llvm-project/issues/101657
The complete changes for porting are present in this draft PR:
https://github.com/llvm/llvm-project/pull/102601
Clang-format for common/Host.cpp for the followup changes
Commit: ad9630d5ee657dd24015afe70016def0c41061fb
https://github.com/llvm/llvm-project/commit/ad9630d5ee657dd24015afe70016def0c41061fb
Author: Karlo Basioli <68535415+basioli-k at users.noreply.github.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Fix bazel build for QuantDialectBytecodeGen (caused by #120172) (#132716)
Commit: c7f14f601f36f8fdabb9182e253add18a471308f
https://github.com/llvm/llvm-project/commit/c7f14f601f36f8fdabb9182e253add18a471308f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Implement __builtin_wcschr (#132708)
This is already almost implemented, just need to enable support for it.
Commit: d536d134276f667881917c9d3a32dcdeff683560
https://github.com/llvm/llvm-project/commit/d536d134276f667881917c9d3a32dcdeff683560
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/test/CodeGen/X86/x86-64-double-shifts-var.ll
Log Message:
-----------
[X86] x86-64-double-shifts-var.ll - regenerate with update_llc_test_checks script to show full codegen
Commit: bf2d30e0927b6b137bf4cc7bf32cd74d8092b0ee
https://github.com/llvm/llvm-project/commit/bf2d30e0927b6b137bf4cc7bf32cd74d8092b0ee
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
A clang/test/CodeGen/AArch64/fmv-detection.c
M clang/test/CodeGen/AArch64/fmv-mix-explicit-implicit-default.c
M clang/test/CodeGen/AArch64/fmv-resolver-emission.c
R clang/test/CodeGen/attr-target-version.c
Log Message:
-----------
[NFC][FMV][AArch64] Tidy up codegen tests. (#132273)
Removes attr-target-version.c which doesn't have a clear purpose.
Introduces AArch64/fmv-detection.c to check detection bitmasks.
Adds coverage in AArch64/fmv-resolver-emission.c
Commit: 9ab3b6a006d8b5c831146eb8a7f0a8df616bd5ad
https://github.com/llvm/llvm-project/commit/9ab3b6a006d8b5c831146eb8a7f0a8df616bd5ad
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Diagnose integral source/dest in memcpy (#132715)
Like the current interpreter does.
Commit: 8a8e4cfc0bb05a794b9b3a8da12927f3db5996de
https://github.com/llvm/llvm-project/commit/8a8e4cfc0bb05a794b9b3a8da12927f3db5996de
Author: David CARLIER <devnexen at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
Log Message:
-----------
[compiler-rt][rtsan] Linux timerfd api interception. (#132709)
Commit: 91140e6a514588ae50f4734761ab2cafff907939
https://github.com/llvm/llvm-project/commit/91140e6a514588ae50f4734761ab2cafff907939
Author: Letu Ren <fantasquex at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[mlir][llvm] Add llvm.intr.exp10 operation (#129378)
Commit: 071643f339a05044bdc2b236ca958d4689c6dd8a
https://github.com/llvm/llvm-project/commit/071643f339a05044bdc2b236ca958d4689c6dd8a
Author: Letu Ren <fantasquex at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[mlir][llvm] Add `llvm.experimental.constrained.fpext` operation (#129054)
Ref: https://github.com/llvm/llvm-project/pull/86260
Commit: 997707172f67a9904698207b40f336923c3ef39a
https://github.com/llvm/llvm-project/commit/997707172f67a9904698207b40f336923c3ef39a
Author: Karlo Basioli <68535415+basioli-k at users.noreply.github.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel
Log Message:
-----------
Fix blaze build caused by commit #5d8e8e8 (#132719)
Commit: 94783a8199c5e589d8efd6d4530482d72bf98f4d
https://github.com/llvm/llvm-project/commit/94783a8199c5e589d8efd6d4530482d72bf98f4d
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
A mlir/test/Dialect/Mesh/sharding-propagation-failed.mlir
Log Message:
-----------
[mlir][mesh] Exit after `signalPassFailure` to fix a crash (#132662)
Fixes #131435.
Commit: cf0efb31880dab5f5b2f20bda6634c68a42d6908
https://github.com/llvm/llvm-project/commit/cf0efb31880dab5f5b2f20bda6634c68a42d6908
Author: Kunwar Grover <groverkss at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Transforms/LoweringPatterns.h
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorGather.cpp
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir][vector] Decouple unrolling gather and gather to llvm lowering (#132206)
This patch decouples unrolling vector.gather and lowering vector.gather
to llvm.masked.gather.
This is consistent with how vector.load, vector.store,
vector.maskedload, vector.maskedstore lower to LLVM.
Some interesting test changes from this patch:
- 2D vector.gather lowering to llvm tests are deleted. This is
consistent with other memory load/store ops.
- There are still tests for 2D vector.gather, but the constant mask for
these test is modified. This is because with the updated lowering, one
of the unrolled vector.gather disappears because it is masked off (also
demonstrating why this is a better lowering path)
Overall, this makes vector.gather take the same consistent path for
lowering to LLVM as other load/store ops.
Discourse Discussion:
https://discourse.llvm.org/t/rfc-improving-gather-codegen-for-vector-dialect/85011/13
Commit: 2f2c02e671d649b5326bb81fd82cfa93ee1be400
https://github.com/llvm/llvm-project/commit/2f2c02e671d649b5326bb81fd82cfa93ee1be400
Author: Karlo Basioli <68535415+basioli-k at users.noreply.github.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel
Log Message:
-----------
Fix bazel build unique function test caused by #ef3e521 (#132726)
Commit: 4fa5ab382e34b35cab71c0485196f47700d3b5e7
https://github.com/llvm/llvm-project/commit/4fa5ab382e34b35cab71c0485196f47700d3b5e7
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M flang/lib/Optimizer/OpenMP/GenericLoopConversion.cpp
M flang/test/Lower/OpenMP/loop-directive.f90
Log Message:
-----------
[flang][OpenMP] Skip multi-block `teams` regions when processing `loop` directives (#132687)
Fixes a regression when the generic `loop` directive conversion pass
encounters a multi-block `teams` region. At the moment, we skip such
regions.
Commit: ef56f4b5a0e3760e0c1c847999180718be93a1db
https://github.com/llvm/llvm-project/commit/ef56f4b5a0e3760e0c1c847999180718be93a1db
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M flang/lib/Lower/OpenMP/PrivateReductionUtils.cpp
M flang/lib/Lower/OpenMP/PrivateReductionUtils.h
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/test/Lower/OpenMP/parallel-reduction-allocatable-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-array-lb.f90
M flang/test/Lower/OpenMP/parallel-reduction-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-array2.f90
M flang/test/Lower/OpenMP/parallel-reduction-pointer-array.f90
M flang/test/Lower/OpenMP/parallel-reduction3.f90
M flang/test/Lower/OpenMP/reduction-array-intrinsic.f90
M flang/test/Lower/OpenMP/wsloop-reduction-allocatable-array-minmax.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array-assumed-shape.f90
A flang/test/Lower/OpenMP/wsloop-reduction-array-lb.f90
A flang/test/Lower/OpenMP/wsloop-reduction-array-lb2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-multiple-clauses.f90
Log Message:
-----------
[flang][OpenMP] Fix reduction of arrays with non-default lower bounds (#132228)
Using LoopNest's indices with ShapeShifts that have non-default
lower bounds results in accesses to incorrect array elements.
To avoid having to adjust each index, a ShapeShift with default
lower bounds can be used instead.
Fixes #131751
Commit: e60fe2e5840229839e7e1e24971dd38d31b22ed8
https://github.com/llvm/llvm-project/commit/e60fe2e5840229839e7e1e24971dd38d31b22ed8
Author: flovent <144676429+flovent at users.noreply.github.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp
M clang/test/Analysis/invalidated-iterator.cpp
Log Message:
-----------
[clang][analyzer] Fix InvalidatedIterator crash caused by overload operator member function with explicit this (#132581)
Fixes #116372
>From this PR #83585, CSA starts to model overload operator member
function with explicit this as `SimpleFunctionCall` rather than
`CXXMemberOperatorCall` (derived from `CXXInstanceCall`), so
`CXXInstanceCall` only represents a non-static C++ member function call
`with implicit this`.
For this checker, it models `operator=` for STL containers, which always
uses implicit this, so the situation using explicit this can be skipped
directly.
Commit: 24a8e18f5a1dfddf7c9a0704a1ccb96a235d3767
https://github.com/llvm/llvm-project/commit/24a8e18f5a1dfddf7c9a0704a1ccb96a235d3767
Author: Kunwar Grover <groverkss at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/Dialect/Vector/ops.mlir
Log Message:
-----------
[mlir][vector] Allow multi dim vectors in vector.scatter (#132217)
This patch matches the definition of vector.scatter as a counter part of
vector.gather.
All of the changes done in this patch make vector.scatter match
vector.gather 's multi dimensional definition.
Unrolling for vector.scatter will be implemented in subsequent patches.
Discourse Discussion:
https://discourse.llvm.org/t/rfc-improving-gather-codegen-for-vector-dialect/85011/13
Commit: dc28e0d5d24364de311a3dc432edfd8bb122560a
https://github.com/llvm/llvm-project/commit/dc28e0d5d24364de311a3dc432edfd8bb122560a
Author: Kunwar Grover <groverkss at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorBroadcast.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorShapeCast.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransferOpTransforms.cpp
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
M mlir/test/Dialect/Vector/canonicalize.mlir
M mlir/test/Dialect/Vector/scalar-vector-transfer-to-memref.mlir
M mlir/test/Dialect/Vector/vector-shape-cast-lowering-transforms.mlir
Log Message:
-----------
[mlir][Vector] Remove more special case uses for extractelement/insertelement (#130166)
A number of places in our codebase special case to use
extractelement/insertelement for 0D vectors, because extract/insert did
not support 0D vectors previously. Since insert/extract support 0D
vectors now, use them instead of special casing.
Commit: f3fa54a191d47809c3385bc655d1d42e6732a212
https://github.com/llvm/llvm-project/commit/f3fa54a191d47809c3385bc655d1d42e6732a212
Author: Kunwar Grover <groverkss at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[mlir][Vector] Handle 0-rank case in fold instead of RewriterPattern (#130168)
For vector.extract, the folder always canonicalizes to a vector.extract
operation, while the rewrite pattern canonicalizes to a vector.broadcast
except in the case of 0-rank vectors.
Remove this special casing, and instead handle the 0-rank vector case in
the folder.
Commit: f8416fcfeca09f0b2c1522e89eaebcbdc0a9f2d3
https://github.com/llvm/llvm-project/commit/f8416fcfeca09f0b2c1522e89eaebcbdc0a9f2d3
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt.mir
Log Message:
-----------
[RISCV][VLOPT] Look through PHI instructions (#132236)
Similar to what we do for copies. We may reduce one of the PHI operands
and not the other, and thats perfectly okay.
Commit: 03d8529d01eac48b84719be5338e8b69bcf5fc8f
https://github.com/llvm/llvm-project/commit/03d8529d01eac48b84719be5338e8b69bcf5fc8f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
A llvm/test/CodeGen/X86/shift-i512.ll
Log Message:
-----------
[X86] Add test coverage for i512 shift-by-constants
Based off #132601 - pass the i512 types inside 512-bit vectors
Shows several missed general codegen issues that will help in a lot more cases than just this.
Commit: ad9909dd7301bc5a70bbb84ffd20ab696c926c1c
https://github.com/llvm/llvm-project/commit/ad9909dd7301bc5a70bbb84ffd20ab696c926c1c
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/buildvector-with-reuses.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduction-transpose.ll
Log Message:
-----------
[SLP]Fix perfect diamond match with extractelements in scalars
Need to drop all previous estimations/vectorizations, when found
a perfect diamond match. This improves cost estimation and improves code
emission.
Also, need to adjust getScalarizationOverhead cost for non-poison input
vector. Currently, it does not allow to estimate it correctly, so
instead use conservative element-by-element insertelement cost for each
unique scalar.
Reviewers: RKSimon, hiraditya
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/132466
Commit: 85974a0537b59268288108d531b0681fa35afc4a
https://github.com/llvm/llvm-project/commit/85974a0537b59268288108d531b0681fa35afc4a
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M flang-rt/CMakeLists.txt
M flang-rt/cmake/modules/AddFlangRT.cmake
M flang-rt/cmake/modules/HandleLibs.cmake
M flang-rt/lib/runtime/CMakeLists.txt
M flang/cmake/modules/FlangCommon.cmake
Log Message:
-----------
[flang-rt] Add experimental support for GPU build (#131826)
Summary:
This patch adds initial support for compiling `flang-rt` directly for
the GPU. The method used here matches what's already done for `libc` and
`libc++` for the GPU and builds off of those projects.
Mainly this requires setting up some flags and setting the sources that
currently work. This will deposit the resulting library in the
appropriate directory. These files are then intended to be linked via
`-Xoffload-linker` support in the offloading driver.
```
lib/clang/21/lib/nvptx64-nvidia-cuda/libflang_rt.runtime.a
lib/clang/21/lib/amdgcn-amd-amdhsa/libflang_rt.runtime.a
```
This is obviously missing a lot of functions, mainly the `io` support.
Most of what we cannot support is due to using POSIX things that just
don't make sense on the GPU. Stuff like `pthreads` or `sema`.
Getting unit tests to run on this will also be a challenge. We could run
tests the same way we do with `libc`, but the problem there is that the
`libc` test suite is freestanding while `gtest` currently doesn't
compile on the GPU bcause it uses a lot of weird stuff. If the unit
tests were simply `int main` then it would work.
I don't understand the actual runtime code very well, I'd appreciate
some guidance on how to actually support Fortran IO from this interface.
As I understand it, Fortran IO requires a stack-like operation, which
conflicts with the SIMT model GPUs use. Worst case scenario we could
burn some LDS to keep a stack, or serialize it somehow since we can
always just iterate over all the active lanes.
Building this right now looks like this, which depends on the arguments
added in https://github.com/llvm/llvm-project/pull/131695.
```
-DRUNTIMES_nvptx64-nvidia-cuda_LLVM_ENABLE_RUNTIMES=compiler-rt;libc;libcxx;libcxxabi;flang-rt \
-DRUNTIMES_amdgcn-amd-amdhsa_LLVM_ENABLE_RUNTIMES=compiler-rt;libc;libcxx;libcxxabi;flang-rt \
-DRUNTIMES_nvptx64-nvidia-cuda_FLANG_RT_LIBC_PROVIDER=llvm \
-DRUNTIMES_nvptx64-nvidia-cuda_FLANG_RT_LIBCXX_PROVIDER=llvm \
-DRUNTIMES_amdgcn-amd-amdhsa_FLANG_RT_LIBC_PROVIDER=llvm \
-DRUNTIMES_amdgcn-amd-amdhsa_FLANG_RT_LIBCXX_PROVIDER=llvm
```
Commit: 529ee3cf3bb97b7ff468b5046372d070a8667147
https://github.com/llvm/llvm-project/commit/529ee3cf3bb97b7ff468b5046372d070a8667147
Author: Matthias Springer <me at m-sp.org>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/include/mlir/Interfaces/ViewLikeInterface.h
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Interfaces/ViewLikeInterface.cpp
M mlir/test/Dialect/Tensor/canonicalize.mlir
Log Message:
-----------
[mlir][tensor] Fix slice canonicalizer for out-of-bounds cases (#132534)
Since #130487, `tensor.extract_slice` and `tensor.insert_slice` ops that
are statically detected to go out of bounds are rejected by the
verifier.
This commit fixes canonicalization patterns that currently fold
dynamically out-of-bounds ops (valid IR) to statically out-of-bounds ops
(invalid IR).
Commit: 7f52d050abe3b8449bba621f93715d817f21e89a
https://github.com/llvm/llvm-project/commit/7f52d050abe3b8449bba621f93715d817f21e89a
Author: Abhinav Kumar <96587705+kr-2003 at users.noreply.github.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libc/config/darwin/arm/entrypoints.txt
Log Message:
-----------
[libc] Enable stdfix functions for macOS arm64 targets. (#132674)
Fixes #132673
Added ```libc.src.stdfix.*``` into
```libc/config/darwin/arm/entrypoints.txt```.
All tests related to ```stdfix``` has passed.
Commit: ed022d93b2fbfe52b7bdee786aa5cc49fa2323c4
https://github.com/llvm/llvm-project/commit/ed022d93b2fbfe52b7bdee786aa5cc49fa2323c4
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/AMDGPU.h
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/test/Driver/amdgpu-toolchain.c
A clang/test/Driver/hip-toolchain-rdc-flto-partitions.hip
M clang/test/Driver/hip-toolchain-rdc-static-lib.hip
M clang/test/Driver/hip-toolchain-rdc.hip
Log Message:
-----------
[clang][AMDGPU] Enable module splitting by default (#128509)
The default number of partitions is the number of cores on the machine
with a cap at 16, as going above 16 is unlikely to be useful in the
common case.
Adds a flto-partitions option to override the number of partitions
easily (without having to use -Xoffload-linker). Setting it to 1
effectively disables module splitting.
Fixes SWDEV-506214
Commit: 9694844d7e36fd5e01011ab56b64f27b867aa72d
https://github.com/llvm/llvm-project/commit/9694844d7e36fd5e01011ab56b64f27b867aa72d
Author: Henry Jiang <h243jian at uwaterloo.ca>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/LoopIdiomRecognize.h
M llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
A llvm/test/Transforms/LoopIdiom/strlen-noidiom.ll
A llvm/test/Transforms/LoopIdiom/strlen-not-emittable.ll
A llvm/test/Transforms/LoopIdiom/strlen.ll
A llvm/test/Transforms/LoopIdiom/wcslen16.ll
A llvm/test/Transforms/LoopIdiom/wcslen32.ll
Log Message:
-----------
Reland "[Transforms] LoopIdiomRecognize recognize strlen and wcslen #108985" (#132572)
Reland https://github.com/llvm/llvm-project/pull/108985
Extend `LoopIdiomRecognize` to find and replace loops of the form
```c
base = str;
while (*str)
++str;
```
and transforming the `strlen` loop idiom into the appropriate `strlen`
and `wcslen` library call which will give a small performance boost if
replaced.
```c
str = base + strlen(base)
len = str - base
```
Commit: 3aa20c266c97a638c63b5368d89fe25757885178
https://github.com/llvm/llvm-project/commit/3aa20c266c97a638c63b5368d89fe25757885178
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/CMakeLists.txt
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/SPIRVOps.h
A mlir/include/mlir/Dialect/SPIRV/Interfaces/CMakeLists.txt
A mlir/include/mlir/Dialect/SPIRV/Interfaces/SPIRVImageInterfaces.h
A mlir/include/mlir/Dialect/SPIRV/Interfaces/SPIRVImageInterfaces.td
M mlir/lib/Dialect/SPIRV/CMakeLists.txt
M mlir/lib/Dialect/SPIRV/IR/CMakeLists.txt
M mlir/lib/Dialect/SPIRV/IR/ImageOps.cpp
A mlir/lib/Dialect/SPIRV/Interfaces/CMakeLists.txt
A mlir/lib/Dialect/SPIRV/Interfaces/SPIRVImageInterfaces.cpp
M mlir/test/Dialect/SPIRV/IR/image-ops.mlir
M mlir/test/Target/SPIRV/image-ops.mlir
Log Message:
-----------
[mlir][spirv] Add definition for selected sample operations (#129558)
This commit adds following three operations: ImageSampleImplicitLodOp,
ImageSampleExplicitLodOp and ImageSampleProjDrefImplicitLodOp
Commit: 7ada6f111f133ef2a749c7f395cf337acdaf0f31
https://github.com/llvm/llvm-project/commit/7ada6f111f133ef2a749c7f395cf337acdaf0f31
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/test/MC/AsmParser/ifeqs.s
M llvm/test/MC/AsmParser/ifnes.s
Log Message:
-----------
[AsmParser] Correctly handle .ifeqs nested in other conditional directives (#132713)
The parser function used for the .ifeqs and .ifnes directives was
missing the check for whether we are currently in an ignored block of an
outer conditional directive, causing the block to be evaluated when it
should not, for example:
.if 0
.ifeqs "a", "a"
// Should not be evaluated, but is
nop
.endif
.endif
Commit: f7aea4d081f77dba48b0fc019f59b678fb679aa8
https://github.com/llvm/llvm-project/commit/f7aea4d081f77dba48b0fc019f59b678fb679aa8
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Implement __builtin_{wcscmp,wcsncmp} (#132723)
Commit: ea68d830d9bf4a482acd69401234b6ecb9807733
https://github.com/llvm/llvm-project/commit/ea68d830d9bf4a482acd69401234b6ecb9807733
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M flang-rt/cmake/modules/AddFlangRT.cmake
Log Message:
-----------
[flang-rt][NFC] Fix indention
Commit: 2edf534f5542a02f3ea3c70effb9503c99add809
https://github.com/llvm/llvm-project/commit/2edf534f5542a02f3ea3c70effb9503c99add809
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M lldb/include/lldb/Expression/DWARFExpression.h
M lldb/source/Expression/DWARFExpression.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Log Message:
-----------
[LLDB][NFC] Added the interface DWARFExpression::Delegate to break dependencies and reduce lldb-server size (#131645)
This patch addresses the issue #129543.
After this patch DWARFExpression does not call DWARFUnit directly and does not depend on
lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp and a lot of clang code.
After this patch the size of lldb-server binary (Linux Aarch64) is reduced from 47MB to 17MB.
Commit: 1904241a9ee648b8146576931f2c7d4191054325
https://github.com/llvm/llvm-project/commit/1904241a9ee648b8146576931f2c7d4191054325
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/WinEHPrepare.cpp
Log Message:
-----------
[CodeGen] Avoid repeated hash lookups (NFC) (#132658)
Commit: 5dd655e8bfa1aa747597c97f5f5776e2d35a77a4
https://github.com/llvm/llvm-project/commit/5dd655e8bfa1aa747597c97f5f5776e2d35a77a4
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCFastISel.cpp
Log Message:
-----------
[PowerPC] Avoid repeated hash lookups (NFC) (#132659)
Commit: 02cf97f703f138eb110c85f1e8f9ed2e2ffd7f95
https://github.com/llvm/llvm-project/commit/02cf97f703f138eb110c85f1e8f9ed2e2ffd7f95
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/shift-i512.ll
Log Message:
-----------
[X86] combineConcatVectorOps - always concatenate integer binops with duplicated operands (#132735)
Only a single operand will need to be concatenated, so treat it like an unaryop
Commit: 5634e7e2f0e446527cf00df544e5a62a3c02db52
https://github.com/llvm/llvm-project/commit/5634e7e2f0e446527cf00df544e5a62a3c02db52
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
A llvm/test/CodeGen/AMDGPU/kill-true-in-return-block.ll
M llvm/test/CodeGen/AMDGPU/skip-if-dead.ll
M llvm/test/CodeGen/AMDGPU/wqm.ll
Log Message:
-----------
[AMDGCN][SIWholeQuadMode] Rework splitBlock/lowerKillI1/lowerKillF32 to handle case when SI_KILL_I1_TERMINATOR -1 0 is not the unique terminator
The lowerKillI1 method wrongly handled cases where it inserted a
new S_BRANCH instruction when the kill was not the only terminator,
and then tried to split the block.
`SI_KILL_I1_TERMINATOR -1,0` doesn't have any effect. Instead of
lowering to an unconditional branch, we remove the instruction and
insert an unconditional branch only if the instruction is the last
terminator. No split is needed in this case (if the last terminator
has been reached, then the whole block was processed).
Also stop generating an unconditional branch in splitBlock: this
branch was redundant since TermMI is promoted to a
terminator that fallsthrough to the next block already.
Solves SWDEV-508819
Commit: b1a8e6e3ae1d7d8c8dbb5e3b9c5df03283fca279
https://github.com/llvm/llvm-project/commit/b1a8e6e3ae1d7d8c8dbb5e3b9c5df03283fca279
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
Log Message:
-----------
[Flang] Link `-lflang_rt.runtime` if available on the device (#132737)
Summary:
Now that we can build the Fortran runtime on the GPU (mostly) we should
be able to implicitly link it if it exists. This matches the normal
behavior where it is included implicity. No tests because it
would require a full VFS and is fairly trivial.
---------
Co-authored-by: Michael Kruse <github at meinersbur.de>
Commit: 5c02f1a5afcf4a7444f680f3f6ef32042e3d28bd
https://github.com/llvm/llvm-project/commit/5c02f1a5afcf4a7444f680f3f6ef32042e3d28bd
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M mlir/test/Target/LLVMIR/omptarget-depend.mlir
Log Message:
-----------
[OpenMP][IRBuilder] De-duplicate code that emit task dependencies (#132340)
A small clean-up following up on #131795. Seems like we had 2 quite
similar implementations for the same thing: emit task dependencies
struct and filling it. This PR unifies the 2 versions into one. This is
better since we had to fix a bug in one of them in #131795 so this
applies the fix for both.
Commit: 0e63180fa3e130c7da304578d29631c847fdcd62
https://github.com/llvm/llvm-project/commit/0e63180fa3e130c7da304578d29631c847fdcd62
Author: Pavel Skripkin <paskripkin at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/aapcs_vararg_frame.ll
M llvm/test/CodeGen/AArch64/alloca.ll
M llvm/test/CodeGen/AArch64/darwinpcs-tail.ll
M llvm/test/CodeGen/AArch64/vararg-tallcall.ll
Log Message:
-----------
Reapply "[Aarch64] [ISel] Don't save vaargs registers if vaargs are unused" (#131459)
This reapplies original commit e122483762b44c7f4386165099ff2a404705d7d4
Second try, but with win64 removed from the scope, since it was somehow
broken by original commit.
### Original PR description
If vaargs are not used there is no need to save them. LLVM already
implements such optimization for x86, as well as gcc [1].
Some ABI tests are kept almost as-is, except for stack offsets, by just
adding llvm.va_start. Only laapcs_vararg_frame.ll test was rewritten to
match new behavior.
[1] https://godbolt.org/z/GWWKr8xMd
Commit: d6976d0bdf8aed334ef1ee2723373766838b7002
https://github.com/llvm/llvm-project/commit/d6976d0bdf8aed334ef1ee2723373766838b7002
Author: Teresa Johnson <tejohnson at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/test/ThinLTO/X86/memprof-icp.ll
Log Message:
-----------
[MemProf] Enable memprof ICP support by default (#132625)
This was disabled by default earlier while some failures were
investigated and ultimately fixed. It has been tested more extensively
since and can be enabled by default.
Commit: 0237216f1606d99e1e05da0f51f12aa8bd901664
https://github.com/llvm/llvm-project/commit/0237216f1606d99e1e05da0f51f12aa8bd901664
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/X86/lower-vec-shift.ll
M llvm/test/CodeGen/X86/midpoint-int-vec-256.ll
M llvm/test/CodeGen/X86/pr62286.ll
M llvm/test/CodeGen/X86/shift-i512.ll
M llvm/test/CodeGen/X86/vector-fshr-256.ll
M llvm/test/CodeGen/X86/vector-gep.ll
Log Message:
-----------
[DAG] canCreateUndefOrPoison - add EXTRACT_SUBVECTOR handling (#132745)
Similar to INSERT_SUBVECTOR - the index is constant and will be inbounds
Commit: f10dc76f034848879340c3004e573e7014293e01
https://github.com/llvm/llvm-project/commit/f10dc76f034848879340c3004e573e7014293e01
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/call-waw-waitcnt.mir
M llvm/test/CodeGen/AMDGPU/insert-waitcnts-hang.mir
M llvm/test/CodeGen/AMDGPU/vccz-corrupt-bug-workaround.mir
Log Message:
-----------
[AMDGPU][NPM] Port SIInsertWaitcnts to NPM (#130061)
Commit: a6a56a326a3c209e19927942595877aceea368b7
https://github.com/llvm/llvm-project/commit/a6a56a326a3c209e19927942595877aceea368b7
Author: Romaric Jodin <rjodin at chromium.org>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libclc/generic/lib/math/erf.cl
M libclc/generic/lib/math/erfc.cl
Log Message:
-----------
[libclc] erfc: fix fp32 implementation in FTZ mode (#132390)
On some implementations, the current implementation leads to slight
accuracy issues.
While the maths behind this implementation is correct, it does not take
into account the accumulation of errors coming from other operators that
do not provide correct rounding (like the exp function).
To avoid it, compute statically exp(-0.5625).
Fixes #124939
Commit: 70c325bf6a1d3d801957e8714178c833156a72e3
https://github.com/llvm/llvm-project/commit/70c325bf6a1d3d801957e8714178c833156a72e3
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
A libclc/clc/include/clc/math/clc_sincos_helpers.h
A libclc/clc/include/clc/math/clc_sincos_helpers.inc
M libclc/clc/include/clc/math/gentype.inc
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/math/clc_sincos_helpers.cl
A libclc/clc/lib/generic/math/clc_sincos_helpers.inc
M libclc/generic/lib/math/clc_tan.cl
M libclc/generic/lib/math/cos.cl
A libclc/generic/lib/math/cos.inc
M libclc/generic/lib/math/sin.cl
A libclc/generic/lib/math/sin.inc
M libclc/generic/lib/math/sincos_helpers.cl
M libclc/generic/lib/math/sincos_helpers.h
Log Message:
-----------
[libclc] Move fp32 sincos helpers to CLC library (#132753)
This commit moves most of the sincos helper functions to the CLC
library. It simultaneously vectorizes them with the aim to increase
performance for vector types by avoiding scalarization.
Some helpers for double types remain as they use various features not
yet ready, like 'fract' which in turn relies on 'fmin'; neither of these
are in the CLC library. They also use table lookups and type punning
which don't translate well to vector versions.
As a proof of concept, float and half versions of the sin and cos
builtins are now vectorized and use the CLC helpers to do so. They
remain in the OpenCL layer but will be simpler to move to the CLC
library when the double versions are ready.
Commit: d447c6e9b73a43f865e4900a8374b242ce4c4bf6
https://github.com/llvm/llvm-project/commit/d447c6e9b73a43f865e4900a8374b242ce4c4bf6
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/test/Misc/diag-template-diffing-cxx11.cpp
Log Message:
-----------
[clang] NFC: remove stray newlines from clang/test/Misc/diag-template-diffing-cxx11.cpp
Commit: 7e22b0903150c7f722b5290155d251b50d839c3a
https://github.com/llvm/llvm-project/commit/7e22b0903150c7f722b5290155d251b50d839c3a
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.ll
M libclc/amdgpu/lib/shared/vload_half_helpers.ll
M libclc/amdgpu/lib/shared/vstore_half_helpers.ll
M libclc/generic/lib/subnormal_disable.ll
M libclc/generic/lib/subnormal_helper_func.ll
M libclc/generic/lib/subnormal_use_default.ll
M libclc/ptx/lib/shared/vload_half_helpers.ll
M libclc/ptx/lib/shared/vstore_half_helpers.ll
M libclc/r600/lib/image/get_image_attributes_impl.ll
M libclc/r600/lib/image/read_image_impl.ll
M libclc/r600/lib/image/write_image_impl.ll
Log Message:
-----------
[libclc] Add missing license headers to source IR files (#132758)
Commit: 410754410fbafa9c642e3ab05d0cad1eeb456432
https://github.com/llvm/llvm-project/commit/410754410fbafa9c642e3ab05d0cad1eeb456432
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libcxx/include/module.modulemap
R libcxx/test/benchmarks/algorithms/algorithms.partition_point.bench.cpp
A libcxx/test/benchmarks/algorithms/partitions/is_partitioned.bench.cpp
A libcxx/test/benchmarks/algorithms/partitions/partition.bench.cpp
A libcxx/test/benchmarks/algorithms/partitions/partition_copy.bench.cpp
A libcxx/test/benchmarks/algorithms/partitions/partition_point.bench.cpp
A libcxx/test/benchmarks/algorithms/partitions/stable_partition.bench.cpp
Log Message:
-----------
[libc++] Add benchmarks for partitioning algorithms (#127324)
This patch adds benchmarks for std::partition, is_partitioned, etc and
their ranges:: variants.
Commit: cdea46cc8c6d20921b47284aaf8751699efbd3a8
https://github.com/llvm/llvm-project/commit/cdea46cc8c6d20921b47284aaf8751699efbd3a8
Author: Ana Mihajlovic <Ana.Mihajlovic at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.inverse.ballot.i64.ll
Log Message:
-----------
[AMDGPU] Add pattern for inverse.ballot.i64 Wave32 (#132770)
Commit: fdbd26b4ed83719f81cf34d413c3343c1421d739
https://github.com/llvm/llvm-project/commit/fdbd26b4ed83719f81cf34d413c3343c1421d739
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libcxx/include/module.modulemap
Log Message:
-----------
[libc++] Add __assertion_handler to the modulemap (#131031)
That header is generated via CMake, but it is nonetheless present in the
final installation, so it should be covered by the modulemap.
rdar://131418726
Commit: 9c6abf02bf250da2615c1d37b8eaba299a5934a1
https://github.com/llvm/llvm-project/commit/9c6abf02bf250da2615c1d37b8eaba299a5934a1
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/include/llvm/MC/MCExpr.h
Log Message:
-----------
MCExpr: Remove unused VariantKind
MCSymbolRefExpr::VariantKind is deprecated - many constants have been
moved to target-specific MCTargetExpr.
Commit: 1f967887018c63bddf5bf2860e0e6a3aa1e85840
https://github.com/llvm/llvm-project/commit/1f967887018c63bddf5bf2860e0e6a3aa1e85840
Author: Tejas Vipin <alissxlace at proton.me>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libc/test/src/math/exhaustive/hypotf_test.cpp
Log Message:
-----------
[libc][math] Fix range and comments in exhaustive hypotf_test (#131769)
`((23U + 127U) << 23) + 1` evaluates to `(2^23)+1` as opposed to `2^24`,
so should instead be `(24U + 127U) << 23`. Additionally, range for both
inputs is inclusive of STOP. The comments have been updated reflecting
these changes.
Commit: f0bc1712a3e35c0a4c967b88f62ff8e216c002c9
https://github.com/llvm/llvm-project/commit/f0bc1712a3e35c0a4c967b88f62ff8e216c002c9
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp
Log Message:
-----------
[Mips] Simplify evaluateAsRelocatableImpl and avoid getSymB calls
The MCValue::SymB MCSymbolRefExpr member might be replaced with a
MCSymbol in the future. Reduce direct access.
Commit: c7e6ee7b9fc26eba55df3264342e130c941c935c
https://github.com/llvm/llvm-project/commit/c7e6ee7b9fc26eba55df3264342e130c941c935c
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Port 3aa20c266c97a638c63b5368d89fe25757885178 (#132774)
Commit: e2c5b95da10547391f1b0461ec8456a4474245fb
https://github.com/llvm/llvm-project/commit/e2c5b95da10547391f1b0461ec8456a4474245fb
Author: Eric Astor <epastor at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/MC/MCParser/MasmParser.cpp
Log Message:
-----------
[ms] [llvm-ml] Remove space-separated argument support (#132750)
This leads to errors when parsing MASM macro calls, and was retained
from AsmParser by mistake.
Fixes #132074
Commit: 65ee2813f9f9a8cd11c5e9ea372da7d12867b52f
https://github.com/llvm/llvm-project/commit/65ee2813f9f9a8cd11c5e9ea372da7d12867b52f
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/lib/Sema/SemaAttr.cpp
A clang/test/Sema/GH126231.cpp
Log Message:
-----------
[clang] Do not infer lifetimebound for functions with void return type (#131997)
Fixes: https://github.com/llvm/llvm-project/issues/126231
Also found in : https://github.com/microsoft/STL/issues/5271
Commit: 2b82555ef44c158c2bd1c26176ac2b5b953817a2
https://github.com/llvm/llvm-project/commit/2b82555ef44c158c2bd1c26176ac2b5b953817a2
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/lib/Target/RISCV/RISCVFeatures.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] Remove experimental from Sdext and Sdtrig which are ratified. (#132529)
They were ratified in February 2025.
Commit: e56ba37bfff37b0ffa88e811fbcb10a1dfe0f42e
https://github.com/llvm/llvm-project/commit/e56ba37bfff37b0ffa88e811fbcb10a1dfe0f42e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSystemOperands.td
M llvm/test/MC/RISCV/machine-csr-names.s
Log Message:
-----------
[RISCV] Remove the mucounteren alternate name for CSR 0x320. (#132498)
This is the old name for 0x320 from privilege spec 1.9. It has different
semantics than mcountinhibit that is at that address now.
It doesn't look like binutils supports this name anymore so I don't
think llvm should.
Commit: f81e3f2633bdd37e0efa79015732ed572166c577
https://github.com/llvm/llvm-project/commit/f81e3f2633bdd37e0efa79015732ed572166c577
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
Log Message:
-----------
[RISCV][NFC] Fix the comment for VALUVINoVm (#132730)
Commit: 869c2a9a1052144957d3ed57378cf927078f4b27
https://github.com/llvm/llvm-project/commit/869c2a9a1052144957d3ed57378cf927078f4b27
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.h
Log Message:
-----------
[PowerPC] Simplify evaluateAsRelocatableImpl
In addition, rename *MCExpr::getKind, which confusingly shadows the base class getKind.
Commit: a30f102253422b57de35f991c783b0873049898f
https://github.com/llvm/llvm-project/commit/a30f102253422b57de35f991c783b0873049898f
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/MC/MCParser/MasmParser.cpp
Log Message:
-----------
[llvm-ml] Remove unused function after #132750
Commit: 9b8bcd288ae8d6d31ac51b3b959e796842b2d5c7
https://github.com/llvm/llvm-project/commit/9b8bcd288ae8d6d31ac51b3b959e796842b2d5c7
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
Log Message:
-----------
[RISCV][test] Add a test for vector hasAndNot
Commit: 34fa037c4fd7f38faada5beedc63ad234e904247
https://github.com/llvm/llvm-project/commit/34fa037c4fd7f38faada5beedc63ad234e904247
Author: Eric Astor <epastor at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
Log Message:
-----------
[ms] [llvm-ml] Remove unused function (#132777)
This was missed in an earlier PR.
Commit: 02ed65912ea36ddbb280c959eebb5df129fa3dfa
https://github.com/llvm/llvm-project/commit/02ed65912ea36ddbb280c959eebb5df129fa3dfa
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/test/CodeGen/AMDGPU/coalesce-copy-to-agpr-to-av-registers.mir
M llvm/test/CodeGen/AMDGPU/inline-asm.i128.ll
M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
Log Message:
-----------
[AMDGPU] 4-align TTMP triples (#132759)
Follow up to e4284a7c70cd "[AMDGPU] 4-align SGPR triples".
Previously TTMP triples like ttmp[3:5] were aligned on a 3-TTMP boundary
which has no basis in hardware.
Aligning them on a 4-TTMP boundary matches what we do for SGPRs, which
reduces the number of extra register classes synthesized by TableGen,
bringing the total number down from 653 to 615.
Commit: 8f3f93cd78cfbf1dea349be2eef98802da8ad929
https://github.com/llvm/llvm-project/commit/8f3f93cd78cfbf1dea349be2eef98802da8ad929
Author: Lei Wang <wlei at fb.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Transforms/IPO/CMakeLists.txt
M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
A llvm/test/Transforms/SampleProfile/Inputs/pseudo-probe-stale-profile-name-similarity.prof
A llvm/test/Transforms/SampleProfile/pseudo-probe-stale-profile-name-similarity.ll
Log Message:
-----------
[SampleFDO] Match functions with the same base function name (#126688)
Sometimes, there may be no matched anchors but the functions still
match. e.g. if the function’s template typename changes, all the
callsites that use the type are mismatched and the caller function that
contains those callsite are mismatched. Introduce a check to match the
functions if their demangled base names are the same.
Commit: ef4f479dab2ef1fc42a461583025e9b5c34a2f7c
https://github.com/llvm/llvm-project/commit/ef4f479dab2ef1fc42a461583025e9b5c34a2f7c
Author: Martin Licht <martin.licht at epfl.ch>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libcxx/docs/UserDocumentation.rst
Log Message:
-----------
[libc++] Documentation for _LIBCPP_REMOVE_TRANSITIVE_INCLUDES (#130560)
Closes #130486
---------
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: aa80388cf9d2444c82e7a1a8c73ddf14930be318
https://github.com/llvm/llvm-project/commit/aa80388cf9d2444c82e7a1a8c73ddf14930be318
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libcxx/include/__algorithm/simd_utils.h
A libcxx/test/libcxx/algorithms/vectorization.compile.pass.cpp
Log Message:
-----------
[libc++] Ensure that we vectorize algorithms on all Clang-based compilers (#132090)
Otherwise, we wouldn't vectorize on compilers like AppleClang when in
reality we know perfectly well how to do it.
Commit: 77648476f28c4ee50eb2ffca952453a210386d7d
https://github.com/llvm/llvm-project/commit/77648476f28c4ee50eb2ffca952453a210386d7d
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/MC/MCSchedule.cpp
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/different-lmul-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/different-sew-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/disable-im.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/fractional-lmul-data.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-at-start.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-in-middle.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-in-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-straddles-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/multiple-same-lmul-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/multiple-same-sew-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/needs-sew-but-only-lmul.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/no-vsetvli-to-start.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/reductions.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-at-start.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-middle.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-straddles-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/strided-load-store.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/strided-load-x0.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vector-integer-arithmetic.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vle-vse.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetivli-lmul-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetivli-lmul-sew-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetvli-lmul-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetvli-lmul-sew-instrument.s
Log Message:
-----------
[MC] Account for AcquireAtCycle in getReciprocalThroughput (#132653)
Previously `MCSchedModel::getReciprocalThroughput` ignored
`AcquireAtCycle` completey, this patch fixes it by using the largest
`(ReleaseAtCycle - AcquireAtCycle) / NumUnits` as inverse throughput.
Here are some technical explanations:
https://myhsu.xyz/llvm-sched-interval-throughput
---------
Co-authored-by: Julien Villette <julien.villette at sipearl.com>
Commit: 061b1d1149660d9de69e35d1ab1759480aa6885a
https://github.com/llvm/llvm-project/commit/061b1d1149660d9de69e35d1ab1759480aa6885a
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Redo RUN lines in the builtin-functions test (#132762)
Make sure we run each configuration once with the bytecode interpreter
and once with the current one. Add a triple to the one that was
previously without.
Commit: e75f586b813a081cffcafb8b5d34b5547e52e548
https://github.com/llvm/llvm-project/commit/e75f586b813a081cffcafb8b5d34b5547e52e548
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/lds-dma-waits.ll
Log Message:
-----------
[AMDGPU] Relax lds dma waitcnt with no aliasing pair (#131842)
If we cannot find any lds DMA instruction that is aliased by some load
from lds, we will still insert vmcnt(0). This is overly cautious since
handling inter-thread dependences is normally managed by the memory
model instead of the waitcnt pass, so this change updates the behavior
to be more inline with how other types of memory events are handled.
Commit: 8a2a6944383cbd83010a4d5c1ef1a7ef34194bcd
https://github.com/llvm/llvm-project/commit/8a2a6944383cbd83010a4d5c1ef1a7ef34194bcd
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/test/Dialect/LLVMIR/constant-folding.mlir
M mlir/test/Target/LLVMIR/Import/constant.ll
M mlir/test/Target/LLVMIR/llvmir-invalid.mlir
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[MLIR][LLVM] Support dso_local_equivalent constants (#132131)
Create a new operation `DSOLocalEquivalentOp`, following the steps of
other constants.
This is similar in a way to `AddressOfOp` but with specific semantics:
only support functions and function aliases (no globals) and extern_weak
linkage is not allowed.
An alternative approach is to use a new `UnitAttr` in `AddressOfOp` and
check that attribute to enforce specific semantics in the verifiers. The
drawback is going against what other constants do and having to add more
attributes in the future when we introduce `no_cfi`, `blockaddress`,
etc.
While here, improve the error message for other missing constants.
Commit: 63e0da45a1d6e8bf28130777dd12b642e68b5f64
https://github.com/llvm/llvm-project/commit/63e0da45a1d6e8bf28130777dd12b642e68b5f64
Author: Karlo Basioli <68535415+basioli-k at users.noreply.github.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
Log Message:
-----------
Fix bazel DWARF include error caused by #131645 (#132789)
Commit: 6c68cc4df1bfbb846e7724568a4cada61847c7f4
https://github.com/llvm/llvm-project/commit/6c68cc4df1bfbb846e7724568a4cada61847c7f4
Author: Karlo Basioli <68535415+basioli-k at users.noreply.github.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
Fix bazel demangle include error caused by #126688 (#132790)
Commit: 8d3dc1ed5656a3e69e4195d58684a7f4bf0ff5cc
https://github.com/llvm/llvm-project/commit/8d3dc1ed5656a3e69e4195d58684a7f4bf0ff5cc
Author: Peter Collingbourne <pcc at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/docs/CommandGuide/lit.rst
M llvm/utils/lit/lit/TestRunner.py
Log Message:
-----------
lit: Move RUN at line comment after the command.
When a developer copy/pastes a failing command line into their
shell to rerun it, they have to manually delete the "RUN: at line
N:" prefix. To make life easier for such developers, let's make it
possible to copy/paste a command without needing to modify it while
still showing the line number in the output by moving the line number
to a comment at the end of the command line.
Reviewers: jroelofs, MaskRay
Reviewed By: jroelofs, MaskRay
Pull Request: https://github.com/llvm/llvm-project/pull/132485
Commit: e4172196a769e13d1d55bf078844cc70419e6991
https://github.com/llvm/llvm-project/commit/e4172196a769e13d1d55bf078844cc70419e6991
Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/test/Dialect/Linalg/transform-tile-and-fuse-pack-unpack.mlir
M mlir/test/Interfaces/TilingInterface/tile-and-fuse-consumer.mlir
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.td
Log Message:
-----------
[mlir][TilingInterface] Make `tileAndFuseConsumerOfSlice` take surrounding loops as an argument. (#132082)
This gets the consumer fusion method in sync with the corresponding
producer fusion method `tileAndFuseProducerOfSlice`. Not taking this as
input required use of complicated analysis to retrieve the surrounding
loops which are very fragile. Just like the producer fusion method, the
loops need to be taken in as an argument, with typically the loops being
created by the tiling methods.
Some utilities are added to check that the loops passed in are perfectly
nested (in the case of an `scf.for` loop nest.
This is change 1 of N to simplify the implementation of tile and fuse
consumers.
---------
Signed-off-by: MaheshRavishankar <mahesh.ravishankar at gmail.com>
Commit: 57e89c97c2c1b4e41f07a90c2f4d36649696e619
https://github.com/llvm/llvm-project/commit/57e89c97c2c1b4e41f07a90c2f4d36649696e619
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/docs/CommandGuide/lit.rst
M llvm/utils/lit/lit/TestRunner.py
Log Message:
-----------
Revert "lit: Move RUN at line comment after the command."
This reverts commit 8d3dc1ed5656a3e69e4195d58684a7f4bf0ff5cc.
Test needs to be updated.
Commit: 7aab2889d7d58230e792eb57782333d04345b4c0
https://github.com/llvm/llvm-project/commit/7aab2889d7d58230e792eb57782333d04345b4c0
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/bolt/lib/Passes/BUILD.gn
Log Message:
-----------
[gn build] Port 03557169e0ad
Commit: 590a5978d671d1836d47afa0c52b5970df061818
https://github.com/llvm/llvm-project/commit/590a5978d671d1836d47afa0c52b5970df061818
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port 2f1416bbcde8
Commit: 9201e4a0863051fadf9726629b8426aa0874c745
https://github.com/llvm/llvm-project/commit/9201e4a0863051fadf9726629b8426aa0874c745
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/tools/lldb-dap/BUILD.gn
Log Message:
-----------
[gn build] Port 30bb0c443e16
Commit: d319cc84e4f6ebe1c1d0edfa8de7d7aa99194626
https://github.com/llvm/llvm-project/commit/d319cc84e4f6ebe1c1d0edfa8de7d7aa99194626
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn
Log Message:
-----------
[gn build] Port 7f920e2e5f70
Commit: a76f678849e6a0941e6d92953c7f0688a461627c
https://github.com/llvm/llvm-project/commit/a76f678849e6a0941e6d92953c7f0688a461627c
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/SystemZ/MCTargetDesc/BUILD.gn
Log Message:
-----------
[gn build] Port f7a32b85b56b
Commit: 10fd5b925fa6339d36b6551047121c291484ca76
https://github.com/llvm/llvm-project/commit/10fd5b925fa6339d36b6551047121c291484ca76
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/test/CodeGen/NVPTX/upgrade-nvvm-annotations.ll
Log Message:
-----------
[NVPTX] Auto-Upgrade !"align" metadata on return values to stackalign (#131726)
This commit follows up 0191307b by auto-upgrading !"align" metadata on
return values to stackalign. This allows us to remove all logic to check
the metadata from NVPTXUtilities.
Commit: 11044de3dcc1dd7a47c8c3f98ecf77c00978b570
https://github.com/llvm/llvm-project/commit/11044de3dcc1dd7a47c8c3f98ecf77c00978b570
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/docs/CommandGuide/lit.rst
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/tests/shtest-external-shell-kill.py
M llvm/utils/lit/tests/shtest-run-at-line.py
Log Message:
-----------
Reapply "lit: Move RUN at line comment after the command."
This reverts commit 57e89c97c2c1b4e41f07a90c2f4d36649696e619.
Updated lit tests.
Commit: 6f4ddefe5b8c1ac61b692613b5b10ecaec1f2066
https://github.com/llvm/llvm-project/commit/6f4ddefe5b8c1ac61b692613b5b10ecaec1f2066
Author: Roland McGrath <mcgrathr at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libc/test/UnitTest/ZxTest.h
Log Message:
-----------
[libc] Remove extraneous ASSERT_ERRNO_* macro definitions (#132812)
These are no longer meant to be defined in each
framework-specific header, but ZxTest.h wasn't updated.
Commit: 368c7f72b917b9a9ae412dfe58d640e7022a3342
https://github.com/llvm/llvm-project/commit/368c7f72b917b9a9ae412dfe58d640e7022a3342
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
A llvm/test/CodeGen/DirectX/ContainerData/PSVResources-order.ll
M llvm/test/CodeGen/DirectX/ContainerData/PSVResources.ll
Log Message:
-----------
[DirectX] Match DXC's resource order in DX container (#130233)
DXC and the DXIL validator expect resources in a DX container to be
specifically ordered CBuffers, Samplers, SRVs, and then UAVs. Match this
behaviour so that we can pass the validator.
Fixes #130232.
Commit: 5b38fb59dfb67ddaf123dc11863218f4b48ea014
https://github.com/llvm/llvm-project/commit/5b38fb59dfb67ddaf123dc11863218f4b48ea014
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanValue.h
Log Message:
-----------
[VPlan] Remove remaining references to VPScalarPHIRecipe (NFC).
VPScalarPHIRecipe has been replaced by VPInstructions with PHI opcodes.
Strip remaining dead references to VPScalarPHIRecipe.
Commit: 0fb4ef40b12d08e4a4966eeac6a395b669d63237
https://github.com/llvm/llvm-project/commit/0fb4ef40b12d08e4a4966eeac6a395b669d63237
Author: Carlos Galvez <carlosgalvezp at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang-tools-extra/clang-query/Query.cpp
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/cert/DontModifyStdNamespaceCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-anon-record-fields.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/file-filter.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/system-headers.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/ASTMatchers/ASTMatchFinder.h
M clang/lib/ASTMatchers/ASTMatchFinder.cpp
M clang/unittests/ASTMatchers/ASTMatchersInternalTest.cpp
Log Message:
-----------
Revert "[clang-tidy] Avoid processing declarations in system headers … (#132743)
…(#128150)"
This was too aggressive, and leads to problems for downstream users:
https://github.com/llvm/llvm-project/pull/128150#issuecomment-2739803409
Let's revert and reland it once we have addressed the problems.
This reverts commit e4a8969e56572371201863594b3a549de2e23f32.
Co-authored-by: Carlos Gálvez <carlos.galvez at zenseact.com>
Commit: 1b9d47545380bc93427f72a6466d851570ed478c
https://github.com/llvm/llvm-project/commit/1b9d47545380bc93427f72a6466d851570ed478c
Author: Jerry-Ge <jerry.ge at arm.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaShapeOps.td
M mlir/test/Dialect/Tosa/availability.mlir
Log Message:
-----------
[mlir][tosa] Align validation profiles and extensions to TOSA v1.0 spec (#132768)
- Add missing int16 extension for concat operator
- Remove int16 extension for cast operator
- Add pro_int and pro_fp profiles for const_shape operator
Signed-off-by: Jerry Ge <jerry.ge at arm.com>
Commit: 4fb9650b21fc038ca044ac1ca7fcd5be0b44194a
https://github.com/llvm/llvm-project/commit/4fb9650b21fc038ca044ac1ca7fcd5be0b44194a
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[clang][docs] Release Note for RISC-V qci-(no)nest
These were omitted from the original PR (#129957)
Commit: 06e2fd962af063d4c0abb854a7adf770178c8dbd
https://github.com/llvm/llvm-project/commit/06e2fd962af063d4c0abb854a7adf770178c8dbd
Author: David Green <david.green at arm.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/complex-int-to-fp.ll
Log Message:
-----------
[AArch64] Regenerate complex-int-to-fp.ll. NFC
Commit: 7fa104ed20a576a792162e8ac677c1543032d8f1
https://github.com/llvm/llvm-project/commit/7fa104ed20a576a792162e8ac677c1543032d8f1
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/test/TableGen/AcquireAtCycle.td
M llvm/utils/TableGen/SubtargetEmitter.cpp
Log Message:
-----------
[TableGen][MCSched] Update error messages on the range of Acquire/ReleaseAtCycle (#131908)
I was looking at the value range of AcquireAtCycle / ReleaseAtCycle, and
I noticed that while the TableGen error messages said AcquireAtCycle has
to be less than ReleaseAtCycle, in reality they are actually allowed to
be the same. This patch fixes it and add more test cases.
Commit: 5a668bdb98d6507626585cedbff0f18628ed7e5c
https://github.com/llvm/llvm-project/commit/5a668bdb98d6507626585cedbff0f18628ed7e5c
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libc/test/src/sys/epoll/linux/CMakeLists.txt
M libc/test/src/sys/epoll/linux/epoll_create1_test.cpp
M libc/test/src/sys/epoll/linux/epoll_create_test.cpp
M libc/test/src/sys/epoll/linux/epoll_ctl_test.cpp
M libc/test/src/sys/epoll/linux/epoll_pwait2_test.cpp
M libc/test/src/sys/epoll/linux/epoll_pwait_test.cpp
M libc/test/src/sys/epoll/linux/epoll_wait_test.cpp
M utils/bazel/llvm-project-overlay/libc/test/src/sys/epoll/BUILD.bazel
Log Message:
-----------
[libc] Migrate sys/epoll tests to use ErrnoCheckingTest. (#132823)
This is similar to PR #132107 but for tests for sys/epoll.h functions.
ErrnoCheckingTest ensures that errno is properly reset at the beginning
of the test case, and is validated at the end of it, so that the manual
code such as the one proposed in PR #131650 would not be necessary.
Commit: 3df92197bbe0ebe715dc71e1ec44f66e4828cf70
https://github.com/llvm/llvm-project/commit/3df92197bbe0ebe715dc71e1ec44f66e4828cf70
Author: Georgios Pinitas <georgios.pinitas at arm.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
M mlir/test/Dialect/Tosa/constant-op-fold.mlir
Log Message:
-----------
[mlir][tosa] Support `DenseResourceElementsAttr` in TOSA transpose folders (#124532)
Handle dense resource attributes in the transpose TOSA folder.
Currently their interface does not align with the rest of the
`ElementsAttr` when it comes to data accessing hence the special
handling.
Signed-off-by: Georgios Pinitas <georgios.pinitas at arm.com>
Commit: 9a82f742b4976650827674e58c3c2b0b412b56f0
https://github.com/llvm/llvm-project/commit/9a82f742b4976650827674e58c3c2b0b412b56f0
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/include/clang/Sema/HLSLExternalSemaSource.h
M clang/lib/Sema/CMakeLists.txt
A clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
A clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
Log Message:
-----------
[HLSL][NFC] Refactor HLSLExternalSemaSource (#131032)
Moving builder classes into separate files
`HLSLBuiltinTypeDeclBuilder.cpp`/`.h`, changing a some
`HLSLExternalSemaSource` methods to private and removing unused methods.
This is a prep work before we start adding more builtin types and
methods, like textures, resource constructors or matrices. For example
constructors could make use of the `BuiltinTypeMethodBuilder`, but this
helper class was defined in `HLSLExternalSemaSource.cpp` after the
method that creates a constructor. Rather than reshuffling the code one
big source file I am moving the builders into a separate cpp & header
file and placing the helper classes declarations up top.
Currently the new header only exposes `BuiltinTypeDeclBuilder` to
`HLSLExternalSemaSource`. In the future but we might decide to expose
more helper classes as needed.
Commit: 0adc672ed4a2e9351732389e25cf7b436de347b7
https://github.com/llvm/llvm-project/commit/0adc672ed4a2e9351732389e25cf7b436de347b7
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Sema/BUILD.gn
Log Message:
-----------
[gn build] Port 9a82f742b497
Commit: 14d25613cb6c7ca4e73db4ffaa19be71e1f474ec
https://github.com/llvm/llvm-project/commit/14d25613cb6c7ca4e73db4ffaa19be71e1f474ec
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
Log Message:
-----------
[HLSL] Finish exposing half types and intrinsics always (#132804)
We previously made an implementation error when adding half overloads
for HLSL library functionality. The half type is always defined in HLSL
and half intrinsics should not be conditionally included.
When native 16-bit types are disabled half is a unique 32-bit float type
with lesser promotion rank than float.
Apply pattern #81782 to intrinsics added in #95999.
Closes #132793
Commit: 20fc2d5aa5076e308f98726b9c32ce4c2a1e08a1
https://github.com/llvm/llvm-project/commit/20fc2d5aa5076e308f98726b9c32ce4c2a1e08a1
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_cursor.py
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[libclang/python] Add some bindings to the `Cursor` interface (#132377)
Make Cursor hashable
Add `Cursor.has_attr()`
Add `Cursor.specialized_template`
This covers the Cursor interface changes added by #120590
---------
Co-authored-by: Mathias Stearn <redbeard0531 at gmail.com>
Commit: 567b0f89239b0e3f0e96419038863f2386b635e3
https://github.com/llvm/llvm-project/commit/567b0f89239b0e3f0e96419038863f2386b635e3
Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/lib/CodeGen/CGStmt.cpp
M clang/test/AST/HLSL/HLSLControlFlowHint.hlsl
M llvm/test/CodeGen/DirectX/HLSLControlFlowHint.ll
M llvm/test/CodeGen/SPIRV/structurizer/HLSLControlFlowHint.ll
Log Message:
-----------
[HLSL] Add support to branch/flatten attributes to switch (#131739)
closes: [#125754](https://github.com/llvm/llvm-project/issues/125754)
---------
Co-authored-by: joaosaffran <joao.saffran at microsoft.com>
Commit: 3ce3d889f6a7faacb883f563697764b8a58c4abf
https://github.com/llvm/llvm-project/commit/3ce3d889f6a7faacb883f563697764b8a58c4abf
Author: Thurston Dang <thurston at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M compiler-rt/lib/asan/asan_shadow_setup.cpp
Log Message:
-----------
[asan] Re-exec without ASLR if needed on 64-bit Linux (#132682)
This generalizes https://github.com/llvm/llvm-project/pull/131975 to non-32-bit Linux (i.e., 64-bit Linux).
This works around an edge case in 64-bit Linux, whereby the memory layout is incompatible if the stack size is unlimited AND ASLR entropy is 31+ bits (see https://github.com/google/sanitizers/issues/856#issuecomment-2747076811).
More generally, this "re-exec without ASLR if layout is incompatible" is a hammer that can work around most shadow mapping issues, without incurring the overhead of using a dynamic shadow.
Commit: c221d6420687660b5d03df7051e5501a51a339c6
https://github.com/llvm/llvm-project/commit/c221d6420687660b5d03df7051e5501a51a339c6
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M flang/include/flang/Evaluate/traverse.h
M flang/include/flang/Evaluate/variable.h
M flang/include/flang/Semantics/dump-expr.h
M flang/lib/Lower/IterationSpace.cpp
Log Message:
-----------
[flang] Remove mentions of evaluate::Variable<T> (#132805)
The template itself was not defined anywhere. The closest thing was a
forward declaration in flang/include/flang/Evaluate/variable.h.
Commit: ef2735d2436fd14288d1766a152f3a10f36a4af9
https://github.com/llvm/llvm-project/commit/ef2735d2436fd14288d1766a152f3a10f36a4af9
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M flang/cmake/modules/FlangCommon.cmake
M flang/include/flang/Common/api-attrs.h
M flang/include/flang/Evaluate/common.h
Log Message:
-----------
[Flang] Detect endianness in the preprocessor (#132767)
Summary:
Currently we use `TestBigEndian` in CMake to determine endianness. This
doesn't work on all platforms and is deprecated since CMake 3.20.
Instead of using CMake, we can just use the GNU/Clang preprocessor
definitions.
The only difficulty is MSVC, mostly because they don't support the same
macros. But, as far as I'm aware, MSVC / Windows targets are always
little endian, and if not we can just override it for that specific
target in the future.
Commit: e6de45a22933114a1d9421dad558a3d62546cb53
https://github.com/llvm/llvm-project/commit/e6de45a22933114a1d9421dad558a3d62546cb53
Author: David Benjamin <davidben at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
M compiler-rt/test/tsan/cxa_guard_acquire.cpp
Log Message:
-----------
[tsan] Don't treat uncontended pthread_once as a potentially blocking region (#132477)
guard_acquire is a helper function used to implement TSan's
__cxa_guard_acquire and pthread_once interceptors.
https://reviews.llvm.org/D54664 introduced optional hooks to support
cooperative multi-threading. It worked by marking the entire
guard_acquire call as a potentially blocking region.
In principle, only the contended case needs to be a potentially blocking
region. This didn't matter for __cxa_guard_acquire because the compiler
emits an inline fast path before calling __cxa_guard_acquire. That is,
once we call __cxa_guard_acquire at all, we know we're in the contended
case.
https://reviews.llvm.org/D107359 then unified the __cxa_guard_acquire
and pthread_once interceptors, adding the hooks to pthread_once.
However, unlike __cxa_guard_acquire, pthread_once callers are not
expected to have an inline fast path. The fast path is inside the
function.
As a result, TSan unnecessarily calls into the cooperative
multi-threading engine on every pthread_once call, despite applications
generally expecting pthread_once to be fast after initialization. Fix
this by deferring the hooks to the contended case inside guard_acquire.
Commit: 0aa4c35beb1f4f8028d79b9ce225a338db0bf9a2
https://github.com/llvm/llvm-project/commit/0aa4c35beb1f4f8028d79b9ce225a338db0bf9a2
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M libc/src/__support/float_to_string.h
Log Message:
-----------
[libc][__support] Fix -Wimplicit-int-conversion warning (#132839)
Newer versions of clang now warn about these, so use explicit
conversion instead.
Commit: ff8aa300d68fefadb6fc75876a595467309f9f52
https://github.com/llvm/llvm-project/commit/ff8aa300d68fefadb6fc75876a595467309f9f52
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/Driver/hip-code-object-version.hip
M clang/test/Misc/warning-flags.c
Log Message:
-----------
[AMDGPU] Remove outdated COV6 warning (#132814)
Commit: 25bf4e262c73444a29e84642ddc409806638fb4f
https://github.com/llvm/llvm-project/commit/25bf4e262c73444a29e84642ddc409806638fb4f
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/amdgpu/utils/UtilitiesRTL.h
M offload/plugins-nextgen/common/src/Utils/ELF.cpp
Log Message:
-----------
[Offload] Remove handling for COV4 binaries from offload/ (#131033)
Summary:
We moved from cov4 to cov5 a long time ago, and it guards simplifying
some front end code, so we should be able to move up with this.
Commit: ece59a8cb9c82227ccd304b1cd26a2c216ddb13e
https://github.com/llvm/llvm-project/commit/ece59a8cb9c82227ccd304b1cd26a2c216ddb13e
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
A llvm/include/llvm/Support/Mustache.h
M llvm/lib/Support/CMakeLists.txt
A llvm/lib/Support/Mustache.cpp
M llvm/unittests/Support/CMakeLists.txt
A llvm/unittests/Support/MustacheTest.cpp
Log Message:
-----------
Reland Support for mustache templating language (#132467)
The last version of this patch had memory leaks due to using the
BumpPtrAllocator for data types that required destructors to run to
release heap memory (e.g. via std::vector and std::string). This version
avoids that by using smart pointers, and dropping support for
BumpPtrAllocator.
We should refactor this code to use the BumpPtrAllocator again, but that
can be addressed in future patches, since those are more invasive
changes that need to refactor many of the core data types to avoid
owning allocations.
Adds Support for the Mustache Templating Language. See specs here:
https://mustache.github.io/mustache.5.html This patch implements
support+tests for majority of the features of the language including:
- Variables
- Comments
- Lambdas
- Sections
This meant as a library to support places where we have to generate
HTML, such as in clang-doc.
Co-authored-by: Peter Chou <peter.chou at mail.utoronto.ca>
Commit: 71a0cfd93263552ddc0bfd2ea7b0abe9a578f87e
https://github.com/llvm/llvm-project/commit/71a0cfd93263552ddc0bfd2ea7b0abe9a578f87e
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/vec3-base.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reversed-strided-node-with-external-ptr.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll
M llvm/test/Transforms/SLPVectorizer/X86/barriercall.ll
M llvm/test/Transforms/SLPVectorizer/X86/bottom-to-top-reorder.ll
M llvm/test/Transforms/SLPVectorizer/X86/buildvector-postpone-for-dependency.ll
M llvm/test/Transforms/SLPVectorizer/X86/bv-shuffle-mask.ll
M llvm/test/Transforms/SLPVectorizer/X86/extract-scalar-from-undef.ll
M llvm/test/Transforms/SLPVectorizer/X86/extractcost.ll
M llvm/test/Transforms/SLPVectorizer/X86/gathered-delayed-nodes-with-reused-user.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-drop-wrapping-flags.ll
M llvm/test/Transforms/SLPVectorizer/X86/multi-extracts-bv-combined.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-scheduled-inst-reused-as-last-inst.ll
M llvm/test/Transforms/SLPVectorizer/X86/propagate_ir_flags.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-vectorized-in-transform.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_diamond_match.ll
M llvm/test/Transforms/SLPVectorizer/X86/shuffle-mask-emission.ll
M llvm/test/Transforms/SLPVectorizer/X86/vec3-base.ll
M llvm/test/Transforms/SLPVectorizer/X86/vect_copyable_in_binops.ll
M llvm/test/Transforms/SLPVectorizer/alternate-opcode-sindle-bv.ll
A llvm/test/Transforms/SLPVectorizer/isOpcodeOrAlt.ll
M llvm/test/Transforms/SLPVectorizer/resized-alt-shuffle-after-minbw.ll
M llvm/test/Transforms/SLPVectorizer/shuffle-mask-resized.ll
Log Message:
-----------
[SLP] Make getSameOpcode support interchangeable instructions. (#127450)
We use the term "interchangeable instructions" to refer to different
operators that have the same meaning (e.g., `add x, 0` is equivalent to
`mul x, 1`).
Non-constant values are not supported, as they may incur high costs with
little benefit.
---------
Co-authored-by: Alexey Bataev <a.bataev at gmx.com>
Commit: c1ed4f642396c1bbea2cc0cd6d2e46ff674145a4
https://github.com/llvm/llvm-project/commit/c1ed4f642396c1bbea2cc0cd6d2e46ff674145a4
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang-tools-extra/test/clang-doc/DR-131697.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Calculator.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Circle.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Rectangle.cpp
M clang-tools-extra/test/clang-doc/enum.cpp
M clang-tools-extra/test/clang-doc/namespace.cpp
M clang-tools-extra/test/clang-doc/single-file-public.cpp
M clang-tools-extra/test/clang-doc/templates.cpp
M clang-tools-extra/test/clang-doc/test-path-abs.cpp
Log Message:
-----------
[clang-doc] Format test files (#132428)
Many of the test files had an inconsistent formatting. This patch ran
clang-format over them using the project's .clang-format file, with
column limit = 0, to prevent test directives from being split over
multiple lines.
Commit: 4c68061254c896214b7ad5ab807ac4ba11517812
https://github.com/llvm/llvm-project/commit/4c68061254c896214b7ad5ab807ac4ba11517812
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[Vectorize] Fix a warning
This patch fixes:
llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp:855:52: error:
unused variable 'SupportedOp' [-Werror,-Wunused-const-variable]
Commit: 5be9082fed7966dfbbbf6e9dfff44d5fb6c5b4fb
https://github.com/llvm/llvm-project/commit/5be9082fed7966dfbbbf6e9dfff44d5fb6c5b4fb
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/test/Fir/CUDA/cuda-launch.fir
Log Message:
-----------
[flang][cuda] Carry over the dynamic shared memory size to gpu.launch_func (#132837)
Commit: e5f100676ed478ec099d0c820648bfe1dd0b52d2
https://github.com/llvm/llvm-project/commit/e5f100676ed478ec099d0c820648bfe1dd0b52d2
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang-tools-extra/clangd/HeaderSourceSwitch.cpp
M clang-tools-extra/clangd/unittests/HeaderSourceSwitchTests.cpp
Log Message:
-----------
[clangd] [C++20] [Modules] Add modules suffix for 'Header' Source Switch (#131591)
Support the trivial "header"/source switch for module interfaces.
I initially thought the naming are bad and we should rename it. But
later I feel it is better to split patches as much as possible.
>From the codes it looks like there are problems. e.g., `isHeaderFile`.
But let's try to fix them in different patches.
Commit: da7f1564a82e431dfbbf5b8d0bd53c64c5ca6af9
https://github.com/llvm/llvm-project/commit/da7f1564a82e431dfbbf5b8d0bd53c64c5ca6af9
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Don't wrap before attributes in parameter lists (#132519)
Fix #132240
Commit: a6d366268d42469c77981e1c086d8035c9909990
https://github.com/llvm/llvm-project/commit/a6d366268d42469c77981e1c086d8035c9909990
Author: tangaac <tangyan01 at loongson.cn>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lsx/vec-shuffle-bit-shift.ll
A llvm/test/CodeGen/LoongArch/lsx/vec-shuffle-byte-shift.ll
Log Message:
-----------
[LoongArch] Pre-commit tests for vector shift (#132702)
Commit: eeb4132b8dc7059f8f2b45a045ecee4948e08204
https://github.com/llvm/llvm-project/commit/eeb4132b8dc7059f8f2b45a045ecee4948e08204
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/tools/opt/NewPMDriver.cpp
Log Message:
-----------
[NFC] Fix macro redefinition warning in NewPMDriver.cpp (#132854)
Commit: bfb549ff33e8585af3e8144240021f86401c4c26
https://github.com/llvm/llvm-project/commit/bfb549ff33e8585af3e8144240021f86401c4c26
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/reduce-operands-target-ext-ty.ll
M llvm/tools/llvm-reduce/deltas/ReduceOperands.cpp
Log Message:
-----------
llvm-reduce: Fix operand reduction asserting on target ext types (#132732)
Not all TargetExtTypes support zeroinit, so use poison as a substitute
if unavailable.
Commit: 37b5f77f8b145714d5931bb46ed090755376e179
https://github.com/llvm/llvm-project/commit/37b5f77f8b145714d5931bb46ed090755376e179
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/operands-to-args-target-ext-type.ll
A llvm/test/tools/llvm-reduce/reduce-args-target-ext-ty.ll
M llvm/tools/llvm-reduce/deltas/Utils.cpp
Log Message:
-----------
llvm-reduce: Fix asserting on TargetExtTypes that do not support zeroinit (#132733)
So far I've been unsuccessful in finding an example where the used constant
value is directly observed in the output. This avoids an assert in an intermediate
step of value replacement.
Commit: 473b0595051aa3da2990d389eee05a41bc71e602
https://github.com/llvm/llvm-project/commit/473b0595051aa3da2990d389eee05a41bc71e602
Author: Lang Hames <lhames at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/Shared/ExecutorAddress.h
M llvm/unittests/ExecutionEngine/Orc/ExecutorAddressTest.cpp
Log Message:
-----------
[ORC] Add ExecutorAddrRange::fromPtrRange convenience method.
This can be used to construct an ExecutorAddrRange from a pair of pointers, or
a pointer and a size.
This will be used to reduce boilerplate in an upcoming patch.
Commit: 9ee950be9538f06f673ad134512ea60cc9af49a8
https://github.com/llvm/llvm-project/commit/9ee950be9538f06f673ad134512ea60cc9af49a8
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
Log Message:
-----------
MCValue: Simplify code with getSubSym
The MCValue::SymB MCSymbolRefExpr member might be replaced with a
MCSymbol in the future. Reduce direct access.
Commit: f6a3cd54bc063efe522cc3df82fcadc86ac5a354
https://github.com/llvm/llvm-project/commit/f6a3cd54bc063efe522cc3df82fcadc86ac5a354
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/include/clang/Basic/AttrDocs.td
Log Message:
-----------
[clang] ``noconvergent`` does not affect calls to convergent functions (#132701)
When placed on a function, the ``clang::noconvergent`` attribute ensures
that the function is not assumed to be convergent. But the same
attribute has no effect on function calls. A call is convergent if the
callee is convergent. This is based on the fact that in LLVM, a call
always inherits all the attributes of the callee. Only ``convergent`` is
an attribute in LLVM IR, and there is no equivalent of
``clang::noconvergent``.
Commit: 26a52f828d1d80b4a505830cd55ab5ac59e1109f
https://github.com/llvm/llvm-project/commit/26a52f828d1d80b4a505830cd55ab5ac59e1109f
Author: Jim Lin <jim at andestech.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
Log Message:
-----------
[RISCV] RISCVInstrInfoSFB.td shouldn't be included in Vendor extensions section. NFC.
RISCVInstrInfoSFB.td is for Short Forward Branch, not a kind of Vendor extension.
Commit: cca0f8113e2f9a1bd662c62dd3ff7e1fa197e6b5
https://github.com/llvm/llvm-project/commit/cca0f8113e2f9a1bd662c62dd3ff7e1fa197e6b5
Author: Paul Schwabauer <pschwabauer at intevation.de>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/lib/Serialization/ASTReader.cpp
A clang/test/Modules/MixedModulePrecompile.cpp
Log Message:
-----------
[PATCH] [clang][modules] Fix serialization and de-serialization of PCH module file refs (#105994) (#132802)
The File ID is incorrectly calculated, resulting in an out-of-bounds
access. The test code is more complex because the File fetching only
happens in specific scenarios.
---------
Co-authored-by: ShaderKeeper <no-reply at shaderkeeper.com>
Co-authored-by: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Commit: 75210df5a2dd6bd9b6fb9d8fbaea27f748c4c41e
https://github.com/llvm/llvm-project/commit/75210df5a2dd6bd9b6fb9d8fbaea27f748c4c41e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIMachineScheduler.cpp
Log Message:
-----------
[AMDGPU] Avoid repeated map lookups (NFC) (#132877)
Commit: fac8fe9cf983ef6abee345d18850f1d4b925b519
https://github.com/llvm/llvm-project/commit/fac8fe9cf983ef6abee345d18850f1d4b925b519
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-24 (Mon, 24 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64BranchTargets.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/Thumb2ITBlockPass.cpp
M llvm/lib/Target/Hexagon/BitTracker.cpp
M llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
M llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
M llvm/lib/Target/Hexagon/HexagonLoadStoreWidening.cpp
M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
Log Message:
-----------
[Target] Use *Set::insert_range (NFC) (#132879)
We can use *Set::insert_range to collapse:
for (auto Elem : Range)
Set.insert(E);
down to:
Set.insert_range(Range);
In some cases, we can further fold that into the set declaration.
Commit: 1e2ad6793ac205607e7c809283cf69e1cc36a69a
https://github.com/llvm/llvm-project/commit/1e2ad6793ac205607e7c809283cf69e1cc36a69a
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
Revert "[clang][bytecode] Implement __builtin_{wcscmp,wcsncmp} (#132723)"
This reverts commit f7aea4d081f77dba48b0fc019f59b678fb679aa8.
This broke the clang-solaris11-sparcv9 builder:
https://lab.llvm.org/buildbot/#/builders/13/builds/6151
Commit: bcedb368e317332d99dbdde617ebc35140b10de3
https://github.com/llvm/llvm-project/commit/bcedb368e317332d99dbdde617ebc35140b10de3
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/c.c
Log Message:
-----------
[clang][bytecode] Support composite arrays in memcpy op (#132775)
See the attached test case.
Commit: cb4ae35de0b4c19149379f16c7b279d80a669f9d
https://github.com/llvm/llvm-project/commit/cb4ae35de0b4c19149379f16c7b279d80a669f9d
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/unittests/Support/YAMLIOTest.cpp
Log Message:
-----------
[YAML][NFC] precommit wrong test case (#131782)
Commit: 9b060d1e6aea15fb486a94798fedd88188269c92
https://github.com/llvm/llvm-project/commit/9b060d1e6aea15fb486a94798fedd88188269c92
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/floats.cpp
Log Message:
-----------
[clang][bytecode] Fix zero-init of atomic floating point objects (#132782)
We can't pass the AtomicType along to ASTContext::getFloatTypeSemantics.
Commit: 847e46ca013fa1d296669bd341c4c48b74797cb6
https://github.com/llvm/llvm-project/commit/847e46ca013fa1d296669bd341c4c48b74797cb6
Author: Ricardo Jesus <rjj at nvidia.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
A clang/test/Driver/aarch64-nvidia-olympus.c
A clang/test/Driver/print-enabled-extensions/aarch64-olympus.c
M clang/test/Misc/target-invalid-cpu-note/aarch64.c
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/TargetParser/Host.cpp
M llvm/test/CodeGen/AArch64/cpus.ll
M llvm/unittests/TargetParser/Host.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[AArch64] Add initial support for -mcpu=olympus. (#132368)
This patch adds support for the NVIDIA Olympus core.
This does not add any special tuning decisions, and those may come
later.
Commit: e696f4e5008c21b8edee089fb80d4e2e0d998e20
https://github.com/llvm/llvm-project/commit/e696f4e5008c21b8edee089fb80d4e2e0d998e20
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/test/tools/llvm-exegesis/X86/lbr/mov-add.s
M llvm/test/tools/llvm-exegesis/lit.local.cfg
Log Message:
-----------
[llvm-exegesis] Fix LBR checks/test
This patch fixes the LBR check in the local lit config. The test would
segfault as the loop body would be basically empty, causing a divide by
zero error. More investigation is needed there so we do not actually hit
that assertion and report a cleaner error somewhere. Specifying an
actual opcode to benchmark fixes the problem. The test would also fail
as -mcpu was set to the default x86 CPU rather than the one currently
being run on, so it would always fail to find a perf counter. This patch
fixes that by simply removing the -mcpu flag.
Given these issues, I'm not sure these tests have ever run in the ~5
years they have been in tree. There were some issues reported in
\#132861, so I guess we'll see if there are further issues when the
testing becomes more broad.
Commit: dd059338a2ebdc68e964bbf4ea62f99f13329e30
https://github.com/llvm/llvm-project/commit/dd059338a2ebdc68e964bbf4ea62f99f13329e30
Author: Martin Storsjö <martin at martin.st>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
Revert "[Vectorize] Fix a warning"
This reverts commit 4c68061254c896214b7ad5ab807ac4ba11517812.
Reverting as part of a revert of a preceding commit.
Commit: b33bec9b2148397818f0634b31fd45e9446faccd
https://github.com/llvm/llvm-project/commit/b33bec9b2148397818f0634b31fd45e9446faccd
Author: Martin Storsjö <martin at martin.st>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/vec3-base.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reversed-strided-node-with-external-ptr.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll
M llvm/test/Transforms/SLPVectorizer/X86/barriercall.ll
M llvm/test/Transforms/SLPVectorizer/X86/bottom-to-top-reorder.ll
M llvm/test/Transforms/SLPVectorizer/X86/buildvector-postpone-for-dependency.ll
M llvm/test/Transforms/SLPVectorizer/X86/bv-shuffle-mask.ll
M llvm/test/Transforms/SLPVectorizer/X86/extract-scalar-from-undef.ll
M llvm/test/Transforms/SLPVectorizer/X86/extractcost.ll
M llvm/test/Transforms/SLPVectorizer/X86/gathered-delayed-nodes-with-reused-user.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-drop-wrapping-flags.ll
M llvm/test/Transforms/SLPVectorizer/X86/multi-extracts-bv-combined.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-scheduled-inst-reused-as-last-inst.ll
M llvm/test/Transforms/SLPVectorizer/X86/propagate_ir_flags.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-vectorized-in-transform.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_diamond_match.ll
M llvm/test/Transforms/SLPVectorizer/X86/shuffle-mask-emission.ll
M llvm/test/Transforms/SLPVectorizer/X86/vec3-base.ll
M llvm/test/Transforms/SLPVectorizer/X86/vect_copyable_in_binops.ll
M llvm/test/Transforms/SLPVectorizer/alternate-opcode-sindle-bv.ll
R llvm/test/Transforms/SLPVectorizer/isOpcodeOrAlt.ll
M llvm/test/Transforms/SLPVectorizer/resized-alt-shuffle-after-minbw.ll
M llvm/test/Transforms/SLPVectorizer/shuffle-mask-resized.ll
Log Message:
-----------
Revert "[SLP] Make getSameOpcode support interchangeable instructions. (#127450)"
This reverts commit 71a0cfd93263552ddc0bfd2ea7b0abe9a578f87e.
This commit triggers failed asserts when compiling ffmpeg. The
issue is reproducible with a small standalone reproducer like this:
void make_filters_from_proto(int *filter[][2], int bands) {
int c, q, n;
for (;; q++) {
n = 0;
for (; n < 7; n++) {
int theta = (q * (n - 6) + (n >> 1) - 3) % bands;
if (theta)
c = theta;
filter[q][n][0] = c;
}
}
}
$ clang -target x86_64-linux-gnu -c repro.c -O3
clang: ../lib/Transforms/Vectorize/SLPVectorizer.cpp:989: llvm::SmallVector<llvm
::Value*> {anonymous}::BinOpSameOpcodeHelper::InterchangeableInfo::getOperand(ll
vm::Instruction*) const: Assertion `FromCIValue.isZero() && "Cannot convert the
instruction."' failed.
The same issue also reproduces for a large number of other target
triples, aarch64-linux-gnu and others.
Commit: 64779455b8f4875c7de690dd4c3e324dbbcb3029
https://github.com/llvm/llvm-project/commit/64779455b8f4875c7de690dd4c3e324dbbcb3029
Author: Martin Storsjö <martin at martin.st>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/unittests/Support/YAMLIOTest.cpp
Log Message:
-----------
Revert "[YAML][NFC] precommit wrong test case (#131782)"
This reverts commit cb4ae35de0b4c19149379f16c7b279d80a669f9d.
That commit broke compilation with GCC:
../unittests/Support/YAMLIOTest.cpp:1280:20: error: explicit specialization of
template<class T> struct llvm::yaml::MappingTraits’ outside its namespace must u
se a nested-name-specifier [-fpermissive]
1280 | template <> struct MappingTraits<V> {
| ^~~~~~~~~~~~~~~~
Commit: d46a699953210093de55baa8b3be56dae5707082
https://github.com/llvm/llvm-project/commit/d46a699953210093de55baa8b3be56dae5707082
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
A libclc/clc/include/clc/math/clc_acos.h
A libclc/clc/include/clc/math/clc_asin.h
A libclc/clc/include/clc/math/clc_atan.h
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/math/clc_acos.cl
A libclc/clc/lib/generic/math/clc_acos.inc
A libclc/clc/lib/generic/math/clc_asin.cl
A libclc/clc/lib/generic/math/clc_asin.inc
A libclc/clc/lib/generic/math/clc_atan.cl
A libclc/clc/lib/generic/math/clc_atan.inc
M libclc/generic/lib/math/acos.cl
M libclc/generic/lib/math/asin.cl
M libclc/generic/lib/math/atan.cl
Log Message:
-----------
[libclc] Move asin/acos/atan to the CLC library (#132788)
This commit simultaneously moves these three functions to the CLC
library and optimizing them for vector types by avoiding scalarization.
Commit: 6984cfea6c888965bb45d046abbb97ddb0443955
https://github.com/llvm/llvm-project/commit/6984cfea6c888965bb45d046abbb97ddb0443955
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
A llvm/test/CodeGen/X86/pr132844.ll
Log Message:
-----------
[X86] Ensure concat(blendi(),blendi()) -> vselect() uses legal select mask types
For 256-bit selections, we could be using sub-i8/vXi8 selection condition masks - extend these to i8 and then extract the lowest mask subvector
Fixes #132844
Commit: e6e8252ba0a090d3a43f9df88214b415f9bb4e77
https://github.com/llvm/llvm-project/commit/e6e8252ba0a090d3a43f9df88214b415f9bb4e77
Author: Dhruv Srivastava <dhruv.srivastava at ibm.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M lldb/source/Host/CMakeLists.txt
M lldb/source/Host/common/Host.cpp
Log Message:
-----------
[lldb][AIX] Minor AIX specific changes (#132718)
This PR is in reference to porting LLDB on AIX.
Link to discussions on llvm discourse and github:
1. https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640
2. https://github.com/llvm/llvm-project/issues/101657
The complete changes for porting are present in this draft PR:
https://github.com/llvm/llvm-project/pull/102601
AIX build specific changes
Commit: 65ad02b882ba545dafbfc195a78e204c218e93ed
https://github.com/llvm/llvm-project/commit/65ad02b882ba545dafbfc195a78e204c218e93ed
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp
M lldb/source/Plugins/Process/Utility/ThreadMemory.cpp
M lldb/source/Plugins/Process/Utility/ThreadMemory.h
Log Message:
-----------
[lldb][NFC] Break ThreadMemory into smaller abstractions (#132905)
ThreadMemory attempts to be a class abstracting the notion of a "fake"
Thread that is backed by a "real" thread. According to its
documentation, it is meant to be a class forwarding most methods to the
backing thread, but it does so only for a handful of methods.
Along the way, it also tries to represent a Thread that may or may not
have a different name, and may or may not have a different queue from
the backing thread. This can be problematic for a couple of reasons:
1. It forces all users into this optional behavior.
2. The forwarding behavior is incomplete: not all methods are currently
being forwarded properly. Some of them involve queues and seem to have
been intentionally left unimplemented.
This commit creates the following separation:
ThreadMemory <- ThreadMemoryProvidingName <-
ThreadMemoryProvidingNameAndQueue
ThreadMemory captures the notion of a backed thread that _really_
forwards all methods to the backing thread. (Missing methods should be
implemented in a later commit, and allowing them to be implemented
without changing behavior of other derived classes is the main purpose
of this refactor).
ThreadMemoryProvidingNameAndQueue is a ThreadMemory that allows users to
override the thread name. If a name is present, it is used; otherwise
the forwarding behavior is used.
ThreadMemoryProvidingNameAndQueue is a ThreadMemoryProvidingName that
allows users to override queue information. If queue information is
present, it is used; otherwise, the forwarding behavior is used.
With this separation, we can more explicitly implement missing methods
of the base class and override them, if needed, in
ThreadMemoryProvidingNameAndQueue. But this commit really is NFC, no new
methods are implemented and no method implementation is changed.
Commit: 07c82b1622de1c5c4329ffb769bef7fef1b07429
https://github.com/llvm/llvm-project/commit/07c82b1622de1c5c4329ffb769bef7fef1b07429
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M lldb/source/Plugins/Process/Utility/ThreadMemory.h
Log Message:
-----------
[lldb] Implement missing queue overloads from ThreadMemory (#132906)
This commit makes ThreadMemory a real "forwarder" class by implementing
the missing queue methods: they will just call the corresponding backing
thread method.
To make this patch NFC(*) and not change the behavior of the Python OS
plugin, NamedThreadMemoryWithQueue also overrides these methods to
simply call the `Thread` method, just as it was doing before. This also
makes it obvious that there are missing pieces of this class if it were
to provide full queue support.
(*) This patch is NFC in the sense that all llvm.org plugins will not
have any behavior change, but downstream consumers of ThreadMemory will
benefit from the newly implemented forwarding methods.
Commit: f8e908a0edce2ed8b835af9aad3993a20bb8f5ce
https://github.com/llvm/llvm-project/commit/f8e908a0edce2ed8b835af9aad3993a20bb8f5ce
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp
M llvm/test/CodeGen/AMDGPU/hard-clauses-img-gfx10.mir
M llvm/test/CodeGen/AMDGPU/hard-clauses-img-gfx11.mir
Log Message:
-----------
[AMDGPU][NPM] Port SIInsertHardClauses to NPM (#130062)
Commit: d4570ea8138f3cc52030f9c3a5772ba41ebb9ced
https://github.com/llvm/llvm-project/commit/d4570ea8138f3cc52030f9c3a5772ba41ebb9ced
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/include/mlir/Conversion/TosaToLinalg/TosaToLinalg.h
M mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgPass.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-pipeline.mlir
M mlir/test/Dialect/Tosa/dynamic_extension.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
M mlir/test/Dialect/Tosa/invalid_extension.mlir
M mlir/test/Dialect/Tosa/level_check.mlir
Log Message:
-----------
[mlir][tosa] Disallow invalid datatype combinations in the validation pass (#131595)
This commit checks if the operands/results of an operator can be found
in the profile compliance mapping, if it isn't the operator is
considered invalid. As a result, operator datatype combinations that are
not listed under the "Supported Data Types" of the TOSA specification
are disallowed and the validation pass results in failure.
Signed-off-by: Luke Hutton <luke.hutton at arm.com>
Commit: 9c7e38896f878daaf5621170dea147fe00fc8625
https://github.com/llvm/llvm-project/commit/9c7e38896f878daaf5621170dea147fe00fc8625
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
Log Message:
-----------
[VPlan] Split off reduction printing tests, add find-last-IV test.
Splits off reduction printing tests, to limit growth and add test case
for printing find-last-IV (https://github.com/llvm/llvm-project/pull/132689)
Commit: 107260cc29368070bba815d94f9d5b7cec1df7d0
https://github.com/llvm/llvm-project/commit/107260cc29368070bba815d94f9d5b7cec1df7d0
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
M llvm/test/CodeGen/AArch64/sme-disable-gisel-fisel.ll
M llvm/test/CodeGen/AArch64/sme-zt0-state.ll
Log Message:
-----------
[AArch64][SME2] Don't preserve ZT0 around SME ABI routines (#132722)
This caused ZT0 to be preserved around `__arm_tpidr2_save` in functions
with "aarch64_new_zt0". The block in which `__arm_tpidr2_save` is called
is added by the SMEABIPass and may be reachable in cases where ZA has
not been enabled* (so using `str zt0` is invalid).
* (when za_save_buffer is null and num_za_save_slices is zero)
Commit: e8d882a95bde49f373f9be88b610ba1a8bcc99be
https://github.com/llvm/llvm-project/commit/e8d882a95bde49f373f9be88b610ba1a8bcc99be
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[LV] Audit and fix nits in cl::opts (NFC) (#130601)
Non-static cl::opts should be under the llvm namespace.
Commit: 5e0e04f0875aa900ddf21682c6692c65fbcf8b81
https://github.com/llvm/llvm-project/commit/5e0e04f0875aa900ddf21682c6692c65fbcf8b81
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineX86ShufflesRecursively - replace Root node argument with opcode/valuetype/ismaskedshuffle data. NFC. (#132437)
Preparatory cleanup up patch to makes it easier for combineX86ShufflesRecursively/combineX86ShuffleChain to handle length changing shuffles up the shuffle chain than what combineX86ShuffleChainWithExtract can manage.
Instead of passing the original Root node, pass the root opcode and the current effective value type (which may have widened as we recurse through EXTRACT_SUBVECTOR/TRUNCATE nodes etc.).
Commit: d4304d85f26984aa772fcddf1f34604e526a6683
https://github.com/llvm/llvm-project/commit/d4304d85f26984aa772fcddf1f34604e526a6683
Author: Matthias Springer <me at m-sp.org>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Interfaces/ViewLikeInterface.h
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Conversion/MemRefToLLVM/expand-then-convert-to-llvm.mlir
M mlir/test/Dialect/Linalg/promote.mlir
M mlir/test/Dialect/MemRef/canonicalize.mlir
M mlir/test/Dialect/MemRef/expand-strided-metadata.mlir
M mlir/test/Dialect/MemRef/fold-memref-alias-ops.mlir
M mlir/test/Dialect/MemRef/invalid.mlir
M mlir/test/Dialect/MemRef/subview.mlir
M mlir/test/Transforms/canonicalize.mlir
M mlir/test/Transforms/compose-subview.mlir
Log Message:
-----------
[mlir][memref] Verify out-of-bounds access for `memref.subview` (#131876)
* Improve the verifier of `memref.subview` to detect out-of-bounds
extractions.
* Improve the documentation of `memref.subview` to make clear that
out-of-bounds extractions are not allowed. Rewrite examples to use the
new `strided<>` notation instead of `affine_map` layout maps. Also
remove all unrelated operations (`memref.alloc`) from the examples.
* Fix various test cases where `memref.subview` ops ran out-of-bounds.
* Update canonicalizations patterns to ensure that they do not fold IR
if it would generate IR that no longer verifies.
Related discussion on Discourse:
https://discourse.llvm.org/t/out-of-bounds-semantics-of-memref-subview/85293
Commit: a29b0d74a198a9c91d39b4d9224c242e1a22df18
https://github.com/llvm/llvm-project/commit/a29b0d74a198a9c91d39b4d9224c242e1a22df18
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/test/AST/ByteCode/records.cpp
Log Message:
-----------
[clang][bytecode] Fix base cast of nullptr without descriptor (#132909)
The missing descriptor should only happen if the pointer is null
pointer.
Commit: 36b36060a1214a4e7314d95d8e8c5609f796e509
https://github.com/llvm/llvm-project/commit/36b36060a1214a4e7314d95d8e8c5609f796e509
Author: Karlo Basioli <68535415+basioli-k at users.noreply.github.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/Interfaces/SPIRVImageInterfaces.td
M mlir/lib/Dialect/SPIRV/Interfaces/SPIRVImageInterfaces.cpp
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][spirv] Fix cyclical dependency in bazel (#132785)
Commit: f737df73a3d8549bf52719c8df41aca091bd7efb
https://github.com/llvm/llvm-project/commit/f737df73a3d8549bf52719c8df41aca091bd7efb
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/sve-cast.ll
A llvm/test/Analysis/CostModel/AArch64/sve-itofp.ll
Log Message:
-----------
[AArch64][CostModel] Increase the cost of illegal SVE int-to-fp converts (#130756)
If a scalable vector uitofp or sitofp effectively extends the size of
each element as part of the conversion, the AArch64 backend
may need to plant multiple unpacks before converting. Increase
the cost in those cases to account for this.
Commit: 2682a9433bb5df0efd9e926947ae289f6e8aecde
https://github.com/llvm/llvm-project/commit/2682a9433bb5df0efd9e926947ae289f6e8aecde
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/revec-ExtractSubvector.ll
M llvm/test/Transforms/SLPVectorizer/revec-shufflevector.ll
Log Message:
-----------
[SLP][REVEC] Add ExtractSubvector cost for ExternalUses. (#132761)
For llvm/test/Transforms/SLPVectorizer/revec-shufflevector.ll,
ScalarCost and ExtraCost is 1, so the original scalar will be kept.
Commit: 9b022220b7960946b5ab3be1e5ace32079b47c5c
https://github.com/llvm/llvm-project/commit/9b022220b7960946b5ab3be1e5ace32079b47c5c
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
M mlir/test/Dialect/Linalg/vectorize-tensor-extract.mlir
A mlir/test/Dialect/Vector/vector-sink-transform.mlir
M mlir/test/Dialect/Vector/vector-sink.mlir
Log Message:
-----------
[mlir][vector] Propagate `vector.extract` through elementwise ops (#131462)
Propagate `Extract(Elementwise(...))` -> `Elemetwise(Extract...)`.
Currenly limited to the case when extract is the single use of
elementwise to avoid introducing additional elementwise ops.
Commit: 9910d34d6ca6d61a9933ed4fc870e4324b6260af
https://github.com/llvm/llvm-project/commit/9910d34d6ca6d61a9933ed4fc870e4324b6260af
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/lib/Target/LLVM/NVVM/Target.cpp
Log Message:
-----------
[MLIR][NVVM] Print ptxas path in debug output for "serialize-to-binary" (#132373)
Commit: 822aa5ec1afee68fb16457ff06de9111c1b62450
https://github.com/llvm/llvm-project/commit/822aa5ec1afee68fb16457ff06de9111c1b62450
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
Log Message:
-----------
[clang][bytecode][NFC] use Field::isUnnamedBitField() directly (#132914)
Instead of going though Decl.
Commit: 8122bb9dbe39a1dde77eb4aad76bf1c0e70b2d89
https://github.com/llvm/llvm-project/commit/8122bb9dbe39a1dde77eb4aad76bf1c0e70b2d89
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-instructions-become-schedulable.ll
Log Message:
-----------
[SLP]Fix a check for non-schedulable instructions
Need to fix a check for non-schedulable instructions in
getLastInstructionInBundle function, because this check may not work
correctly during the codegen. Instead, need to check that actually these
instructions were never scheduled, since the scheduling analysis always
performed before the codegen and is stable.
Fixes #132841
Commit: 6e66cfeeaec6f09a4454400e45d690457ecdd3de
https://github.com/llvm/llvm-project/commit/6e66cfeeaec6f09a4454400e45d690457ecdd3de
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/vec3-base.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reversed-strided-node-with-external-ptr.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll
A llvm/test/Transforms/SLPVectorizer/X86/BinOpSameOpcodeHelper.ll
M llvm/test/Transforms/SLPVectorizer/X86/barriercall.ll
M llvm/test/Transforms/SLPVectorizer/X86/bottom-to-top-reorder.ll
M llvm/test/Transforms/SLPVectorizer/X86/buildvector-postpone-for-dependency.ll
M llvm/test/Transforms/SLPVectorizer/X86/bv-shuffle-mask.ll
M llvm/test/Transforms/SLPVectorizer/X86/extract-scalar-from-undef.ll
M llvm/test/Transforms/SLPVectorizer/X86/extractcost.ll
M llvm/test/Transforms/SLPVectorizer/X86/gathered-delayed-nodes-with-reused-user.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-drop-wrapping-flags.ll
M llvm/test/Transforms/SLPVectorizer/X86/multi-extracts-bv-combined.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-scheduled-inst-reused-as-last-inst.ll
M llvm/test/Transforms/SLPVectorizer/X86/propagate_ir_flags.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-vectorized-in-transform.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_diamond_match.ll
M llvm/test/Transforms/SLPVectorizer/X86/shuffle-mask-emission.ll
M llvm/test/Transforms/SLPVectorizer/X86/vec3-base.ll
M llvm/test/Transforms/SLPVectorizer/X86/vect_copyable_in_binops.ll
M llvm/test/Transforms/SLPVectorizer/alternate-opcode-sindle-bv.ll
A llvm/test/Transforms/SLPVectorizer/isOpcodeOrAlt.ll
M llvm/test/Transforms/SLPVectorizer/resized-alt-shuffle-after-minbw.ll
M llvm/test/Transforms/SLPVectorizer/shuffle-mask-resized.ll
Log Message:
-----------
[SLP] Make getSameOpcode support interchangeable instructions. (#132887)
We use the term "interchangeable instructions" to refer to different
operators that have the same meaning (e.g., `add x, 0` is equivalent to
`mul x, 1`).
Non-constant values are not supported, as they may incur high costs with
little benefit.
---------
Co-authored-by: Alexey Bataev <a.bataev at gmx.com>
Commit: 975c208556ef85b321a223fe592fa6d98fadfaa0
https://github.com/llvm/llvm-project/commit/975c208556ef85b321a223fe592fa6d98fadfaa0
Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86InstrAVX10.td
M llvm/test/CodeGen/X86/avx10_2_512bf16-intrinsics.ll
M llvm/test/CodeGen/X86/avx10_2bf16-intrinsics.ll
M llvm/test/MC/Disassembler/X86/avx10.2-bf16-32.txt
M llvm/test/MC/Disassembler/X86/avx10.2-bf16-64.txt
M llvm/test/MC/Disassembler/X86/avx10.2-com-ef-32.txt
M llvm/test/MC/Disassembler/X86/avx10.2-com-ef-64.txt
M llvm/test/MC/X86/avx10.2-bf16-32-att.s
M llvm/test/MC/X86/avx10.2-bf16-32-intel.s
M llvm/test/MC/X86/avx10.2-bf16-64-att.s
M llvm/test/MC/X86/avx10.2-bf16-64-intel.s
M llvm/test/MC/X86/avx10.2-com-ef-32-att.s
M llvm/test/MC/X86/avx10.2-com-ef-32-intel.s
M llvm/test/MC/X86/avx10.2-com-ef-64-att.s
M llvm/test/MC/X86/avx10.2-com-ef-64-intel.s
Log Message:
-----------
[X86][AVX10.2] Include changes for COMX and VGETEXP from rev. 2 (#132824)
Address missing changes:
- V[,U]COMXSD need to have XD (F3.0F –> F2.0F)
- V[,U]COMXS[S,H] need to have XS (F2.[0F,MAP5] -> F3.[0F,MAP5])
- VGETEXPBF16 needs to have T_MAP6 and NP (66.MAP5 -> NP.MAP6)
Ref.: https://cdrdv2.intel.com/v1/dl/getContent/828965
Commit: cca9b55f54e908b24d466a59eee4e57c1d8ff1ab
https://github.com/llvm/llvm-project/commit/cca9b55f54e908b24d466a59eee4e57c1d8ff1ab
Author: Karlo Basioli <68535415+basioli-k at users.noreply.github.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/Dialect/BUILD.bazel
Log Message:
-----------
Fix bazel test errors caused by #131462 (#132929)
Commit: dfca6c0d3bf9d1a0565b3ff46813ddd66bd493e9
https://github.com/llvm/llvm-project/commit/dfca6c0d3bf9d1a0565b3ff46813ddd66bd493e9
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopLoadElim/versioning-scev-invalidation.ll
M llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/AArch64/eliminate-tail-predication.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/extractvalue-no-scalarization-required.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/gather-do-not-vectorize-addressing.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-store-of-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-load-store.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-reduction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-avoid-scalarization.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-fp-ext-trunc-illegal-type.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reduction-inloop-cond.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/streaming-compatible-sve-no-maximize-bandwidth.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-inloop-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-strict-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inv-store.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-optsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-gep.ll
M llvm/test/Transforms/LoopVectorize/AArch64/synthesize-mask-for-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-fold-uniform-memops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-hoist-runtime-checks.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-multiexit.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
M llvm/test/Transforms/LoopVectorize/ARM/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/ARM/prefer-tail-loop-folding.ll
M llvm/test/Transforms/LoopVectorize/ARM/sphinx.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-folding-loop-hint.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-folding-not-allowed.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-folding-prefer-flag.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-folding-scalar-epilogue-fallback.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/large-loop-rdx.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/optimal-epilog-vectorization.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/small-loop-rdx.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/vectorize-bswap.ll
M llvm/test/Transforms/LoopVectorize/RISCV/bf16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/defaults.ll
M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
M llvm/test/Transforms/LoopVectorize/RISCV/f16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/lmul.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/mask-index-type.ll
M llvm/test/Transforms/LoopVectorize/RISCV/ordered-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
M llvm/test/Transforms/LoopVectorize/RISCV/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-tailfold.ll
M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-bin-unary-ops-args.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-call-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cast-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-div.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-iv32.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-known-no-overflow.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-masked-loadstore.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-ordered-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reverse-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-safe-dep-distance.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-uniform-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-select-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/WebAssembly/induction-branch-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/conversion-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/gep-use-outside-loop.ll
M llvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-hoist-load-across-store.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-sink-store-across-load.ll
M llvm/test/Transforms/LoopVectorize/X86/limit-vf-by-tripcount.ll
M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
M llvm/test/Transforms/LoopVectorize/X86/multi-exit-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/optsize.ll
M llvm/test/Transforms/LoopVectorize/X86/pr36524.ll
M llvm/test/Transforms/LoopVectorize/X86/pr47437.ll
M llvm/test/Transforms/LoopVectorize/X86/pr56319-vector-exit-cond-optimization-epilogue-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
M llvm/test/Transforms/LoopVectorize/X86/predicate-switch.ll
M llvm/test/Transforms/LoopVectorize/X86/tail_loop_folding.ll
M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll
M llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-force-tail-with-evl.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-predication.ll
M llvm/test/Transforms/LoopVectorize/create-induction-resume.ll
M llvm/test/Transforms/LoopVectorize/debugloc.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-variable-size.ll
M llvm/test/Transforms/LoopVectorize/dont-fold-tail-for-divisible-TC.ll
M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-trunc-induction-steps.ll
M llvm/test/Transforms/LoopVectorize/extract-from-end-vector-constant.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-multiply-recurrences.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll
M llvm/test/Transforms/LoopVectorize/fpsat.ll
M llvm/test/Transforms/LoopVectorize/if-pred-non-void.ll
M llvm/test/Transforms/LoopVectorize/if-reduction.ll
M llvm/test/Transforms/LoopVectorize/induction-step.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/induction_plus.ll
M llvm/test/Transforms/LoopVectorize/instruction-only-used-outside-of-loop.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-different-insert-position.ll
M llvm/test/Transforms/LoopVectorize/invalidate-scev-at-scope-after-vectorization.ll
M llvm/test/Transforms/LoopVectorize/is_fpclass.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-nested-loop.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-no-wrap.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
M llvm/test/Transforms/LoopVectorize/load-of-struct-deref-pred.ll
M llvm/test/Transforms/LoopVectorize/loop-form.ll
M llvm/test/Transforms/LoopVectorize/make-followup-loop-id.ll
M llvm/test/Transforms/LoopVectorize/multiple-strides-vectorization.ll
M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
M llvm/test/Transforms/LoopVectorize/no_outside_user.ll
M llvm/test/Transforms/LoopVectorize/opaque-ptr.ll
M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization-liveout.ll
M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
M llvm/test/Transforms/LoopVectorize/optsize.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/pr30654-phiscev-sext-trunc.ll
M llvm/test/Transforms/LoopVectorize/pr35773.ll
M llvm/test/Transforms/LoopVectorize/pr37248.ll
M llvm/test/Transforms/LoopVectorize/pr39417-optsize-scevchecks.ll
M llvm/test/Transforms/LoopVectorize/pr50686.ll
M llvm/test/Transforms/LoopVectorize/predicate-switch.ll
M llvm/test/Transforms/LoopVectorize/preserve-or-disjoint.ll
M llvm/test/Transforms/LoopVectorize/reduction-with-invariant-store.ll
M llvm/test/Transforms/LoopVectorize/remarks-reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/runtime-check-needed-but-empty.ll
M llvm/test/Transforms/LoopVectorize/runtime-check-small-clamped-bounds.ll
M llvm/test/Transforms/LoopVectorize/runtime-checks-difference-simplifications.ll
M llvm/test/Transforms/LoopVectorize/runtime-checks-hoist.ll
M llvm/test/Transforms/LoopVectorize/scalable-lifetime.ll
M llvm/test/Transforms/LoopVectorize/scev-exit-phi-invalidation.ll
M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll
M llvm/test/Transforms/LoopVectorize/select-cmp-multiuse.ll
M llvm/test/Transforms/LoopVectorize/select-cmp.ll
M llvm/test/Transforms/LoopVectorize/select-min-index.ll
M llvm/test/Transforms/LoopVectorize/select-reduction-start-value-may-be-undef-or-poison.ll
M llvm/test/Transforms/LoopVectorize/select-with-fastflags.ll
M llvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
M llvm/test/Transforms/LoopVectorize/skeleton-lcssa-crash.ll
M llvm/test/Transforms/LoopVectorize/trip-count-expansion-may-introduce-ub.ll
M llvm/test/Transforms/LoopVectorize/trunc-extended-icmps.ll
M llvm/test/Transforms/LoopVectorize/trunc-loads-p16.ll
M llvm/test/Transforms/LoopVectorize/trunc-shifts.ll
M llvm/test/Transforms/LoopVectorize/uitofp-preserve-nneg.ll
M llvm/test/Transforms/LoopVectorize/uniform-blend.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_and.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_div_urem.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_lshr.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction2.ll
M llvm/test/Transforms/LoopVectorize/unused-blend-mask-for-first-operand.ll
M llvm/test/Transforms/LoopVectorize/use-scalar-epilogue-if-tp-fails.ll
M llvm/test/Transforms/LoopVectorize/vect-phiscev-sext-trunc.ll
M llvm/test/Transforms/LoopVectorize/vector-intrinsic-call-cost.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
M llvm/test/Transforms/LoopVectorize/vectorize-force-tail-with-evl.ll
M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll
M llvm/test/Transforms/LoopVectorize/widen-gep-all-indices-invariant.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/sve-interleave-vectorization.ll
Log Message:
-----------
[VPlan] Remove no-op SCALAR-STEPS after unrolling. (#123655)
After unrolling, there may be additional simplifications that can be
applied. One example is removing SCALAR-STEPS for the first part where
only the first lane is demanded.
This removes redundant adds of 0 from a large number of tests (~200),
many which I am still working on updating.
In preparation for removing redundant WideIV steps added in
https://github.com/llvm/llvm-project/pull/119284.
PR: https://github.com/llvm/llvm-project/pull/123655
Commit: b24694371c62a71aab3550e983a6bf971ed721ff
https://github.com/llvm/llvm-project/commit/b24694371c62a71aab3550e983a6bf971ed721ff
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Add instantiation of VPUnrollPartAccessor<2> to fix link errors.
Speculative fix for missing definitions in some configs, including
https://lab.llvm.org/buildbot/#/builders/159/builds/18760
Commit: 449e3fad62455653beaa77f328f804a2027096f9
https://github.com/llvm/llvm-project/commit/449e3fad62455653beaa77f328f804a2027096f9
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/shift-i512.ll
Log Message:
-----------
[X86] combineConcatVectorOps - add concatenation handling for X86ISD::VSHLD/VSHRD funnel shift nodes (#132915)
Concat the nodes if we can merge either of the operands for free.
Commit: 3013458a7901d2ec8c92ec1854c7a9354701f4c7
https://github.com/llvm/llvm-project/commit/3013458a7901d2ec8c92ec1854c7a9354701f4c7
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
A libclc/clc/include/clc/math/clc_acospi.h
A libclc/clc/include/clc/math/clc_asinpi.h
A libclc/clc/include/clc/math/clc_atanpi.h
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/math/clc_acospi.cl
A libclc/clc/lib/generic/math/clc_acospi.inc
A libclc/clc/lib/generic/math/clc_asinpi.cl
A libclc/clc/lib/generic/math/clc_asinpi.inc
A libclc/clc/lib/generic/math/clc_atanpi.cl
A libclc/clc/lib/generic/math/clc_atanpi.inc
M libclc/generic/lib/math/acospi.cl
M libclc/generic/lib/math/asinpi.cl
M libclc/generic/lib/math/atanpi.cl
Log Message:
-----------
[libclc] Move asinpi/acospi/atanpi to the CLC library (#132918)
Similar to d46a6999, this commit simultaneously moves these three
functions to the CLC library and optimizes them for vector types by
avoiding scalarization.
Commit: 9768077de65e31daa619eae231f027e052d601c2
https://github.com/llvm/llvm-project/commit/9768077de65e31daa619eae231f027e052d601c2
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
Log Message:
-----------
[mlir][vector] Update helpers in `VectorEmulateNarrowType.cpp` (nfc) (#131527)
Refactors the following pairs of helper hooks:
* `dynamicallyInsertSubVector` + `staticallyInsertSubVector`
* `dynamicallyExtractSubVector` + `staticallyExtractSubVector`
These hooks are very similar, so I have unified the variable names and
various conditions to make the actual differences clearer.
Commit: 6785951410c35aa9429152d3e041b44b79db53f2
https://github.com/llvm/llvm-project/commit/6785951410c35aa9429152d3e041b44b79db53f2
Author: Jonathan Cohen <joncoh at apple.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineCombinerPattern.h
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.h
A llvm/test/CodeGen/AArch64/aarch64-reassociate-accumulators-sve.ll
A llvm/test/CodeGen/AArch64/aarch64-reassociate-accumulators.ll
A llvm/test/CodeGen/AArch64/machine-combiner-reassociate-accumulators.mir
Log Message:
-----------
[Machine-Combiner] Add a pass to reassociate chains of accumulation instructions into a tree (#132728)
This pass is designed to increase ILP by performing accumulation into
multiple registers. It currently supports only the S/UABAL accumulation
instruction, but can be extended to support additional instructions.
Reland of #126060 which was reverted due to a conflict with #131272.
Commit: c0a7ccb59acfe90de38c580f52f2691c00f7ea9c
https://github.com/llvm/llvm-project/commit/c0a7ccb59acfe90de38c580f52f2691c00f7ea9c
Author: Dominik Steenken <dost at de.ibm.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZInstrFP.td
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
M llvm/lib/Target/SystemZ/SystemZInstrInfo.td
M llvm/lib/Target/SystemZ/SystemZInstrVector.td
Log Message:
-----------
[SystemZ] Implement basic `isCopyInstrImpl` (#132903)
As a first step toward implementing SystemZ support for instr-ref-based
debug info tracking, this commit adds a basic implementation for the
previously absent `SystemZInstrInfo::isCopyInstrImpl`.
This is accomplished by adding a new flag called `isMoveReg` on the
relevant instructions and calling upon that bit of information to
implement the function. Which instructions to add the flag to was based
on the implementation of `SystemZInstrInfo::copyPhysReg`. The full list
of instructions is as follows:
#### General-Purpose Registers
- `lr`
- `lgr`
#### Floating Point Registers
- `ler`
- `ldr`
- `lxr`
#### Vector Registers
- `vlr`
Commit: 2a10e3d4b0cb65557580db2de38846b2fbf2bce4
https://github.com/llvm/llvm-project/commit/2a10e3d4b0cb65557580db2de38846b2fbf2bce4
Author: Dominik Steenken <dost at de.ibm.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
Log Message:
-----------
[SystemZ] Add pass initialization for `CopyPhysRegs` pass (#132912)
This commit adds an initialization to `SystemZTargetMachine` for the
`SystemZCopyPhysRegs` pass that was thus far missing. This will enable,
e.g., to run tests for that pass via `llc
--run-pass=systemz-copy-physregs`.
Commit: f24cf59d7afbfcefe43086c2e0984992deec3678
https://github.com/llvm/llvm-project/commit/f24cf59d7afbfcefe43086c2e0984992deec3678
Author: Dominik Steenken <dost at de.ibm.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
M llvm/test/CodeGen/SystemZ/builtin-setjmp-alloca.ll
M llvm/test/CodeGen/SystemZ/builtin-setjmp-spills.ll
M llvm/test/CodeGen/SystemZ/builtin-setjmp.ll
M llvm/test/CodeGen/SystemZ/fmuladd-soft-float.ll
M llvm/test/CodeGen/SystemZ/foldmemop-imm-02.mir
M llvm/test/CodeGen/SystemZ/foldmemop-vec-cc.mir
M llvm/test/CodeGen/SystemZ/foldmemop-vec-cmp.mir
M llvm/test/CodeGen/SystemZ/foldmemop-vec-unary.mir
M llvm/test/CodeGen/SystemZ/fp-move-02.ll
M llvm/test/CodeGen/SystemZ/frame-22.ll
M llvm/test/CodeGen/SystemZ/int-uadd-03.ll
M llvm/test/CodeGen/SystemZ/int-usub-03.ll
M llvm/test/CodeGen/SystemZ/vector-constrained-fp-intrinsics.ll
M llvm/test/CodeGen/SystemZ/zos-prologue-epilog.ll
Log Message:
-----------
[SystemZ] Add `is(LoadFrom|StoreTo)StackSlotPostFE` to SystemZBackend (#132928)
As part of an effort to enable instr-ref-based debug value tracking,
this PR implements `SystemZInstrInfo::isLoadFromStackSlotPostFE`, as
well as `SystemZInstrInfo::isStoreToStackSlotPostFE`. The implementation
relies upon the presence of MachineMemoryOperands on the relevant
`MachineInstr`s in order to access the `FrameIndex` post frame index
elimination.
Since these new functions are only meant to be called after frame-index
elimination, they assert against the present of a frame index on the
base register operand of the instruction.
Outside of the utility of these functions to enable instr-ref-based
debug value tracking, they also changes the behavior of the AsmPrinter,
since it will now be able to properly detect non-folded spills and
reloads, so this changes a number of tests that were checking
specifically for folded reloads.
Note that there are some tests that still check for `vst` and `vl` as
folded spills/reloads even though they should be straight reloads. This
will be addressed in a future PR.
Co-authored-by: Dominik Steenken <dominik.steenken at gmail.com>
Commit: ba46c37f9c56cb207c0c7189246456edef563340
https://github.com/llvm/llvm-project/commit/ba46c37f9c56cb207c0c7189246456edef563340
Author: Leslie <Wse1714401046 at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M libc/src/time/mktime.cpp
M libc/src/time/time_utils.cpp
M libc/src/time/time_utils.h
Log Message:
-----------
[libc] change the return value type of mktime_internal to time_t (#132231)
This pr is to resovle #126948
---------
Co-authored-by: Joseph Huber <huberjn at outlook.com>
Commit: db33978c467c6d794fc768e14a18abcc089e6ba5
https://github.com/llvm/llvm-project/commit/db33978c467c6d794fc768e14a18abcc089e6ba5
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/docs/AMDGPU/AMDGPUAsmGFX11.rst
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/test/MC/AMDGPU/gfx11_asm_mubuf.s
M llvm/test/MC/AMDGPU/gfx11_asm_mubuf_err.s
M llvm/test/MC/AMDGPU/gfx12_unsupported.s
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_mubuf.txt
Log Message:
-----------
[AMDGPU][GFX11] buffer_load_lds_{size} instructions do not exist (#132916)
According to the shader manual there are not buffer load lds
instructions of gfx11.
The tests for the regular `buffer_load ... lds` instructions for gfx11
are already present in AMDGPU/gfx11_asm_mubuf.s, where the compiler
fails to encode the instructions for this target.
Commit: 5105ecc413757999ea0aec238ed54ae39dbf005d
https://github.com/llvm/llvm-project/commit/5105ecc413757999ea0aec238ed54ae39dbf005d
Author: offsetof <offsetof at mailo.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaInit.cpp
M clang/test/CXX/dcl.decl/dcl.init/dcl.init.general/p16-cxx20.cpp
Log Message:
-----------
[clang] Refine handling of C++20 aggregate initialization (#131320)
* Move parts of `InitializationSequence::InitializeFrom` corresponding
to C++ [dcl.init.general] p16.6.1 and p16.6.2 into a separate
function,`TryConstructorOrParenListInitialization`
* Use it in `TryListInitialization` to implement [dcl.init.list] p3.2
* Fix parenthesized aggregate initialization being attempted in
copy-initialization contexts or when the constructor call is ambiguous
Co-authored-by: cor3ntin <corentinjabot at gmail.com>
Commit: a6de034f853797161f8cb2f074ecc48edec43f40
https://github.com/llvm/llvm-project/commit/a6de034f853797161f8cb2f074ecc48edec43f40
Author: Tsukasa OI <research_trasio at irq.a4lg.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
Log Message:
-----------
[RISCV] Combine 3 bit-manip extensions into `B` (#132858)
Like cryptography extensions like `Zk`, `B` (a combination of `Zba`,
`Zbb` and `Zbs` extensions) can be useful if we handle this extension as
a combination.
If all `Zba`, `Zbb` and `Zbs` extensions are enabled, it also enables
the `B` extension.
Commit: 6aed161cb986234fbe2378d4c3c79d4120eef6b9
https://github.com/llvm/llvm-project/commit/6aed161cb986234fbe2378d4c3c79d4120eef6b9
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M libc/test/src/__support/CMakeLists.txt
Log Message:
-----------
[libc][NFC] Remove incorrect file level dependency in CMake (#132937)
Summary:
CMake doesn't support this type of dependency so it keeps emitting a
warning. Just remove it, because it's not doing anything currently
anyway. If we really wanted this to work you'd need to add a custom
target that has a dependency on the output of a custom command, but that
would only be worhwhile if we ever expected this file to change.
Commit: fedac3bdb83876d25782966f1d16768ece787800
https://github.com/llvm/llvm-project/commit/fedac3bdb83876d25782966f1d16768ece787800
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
Log Message:
-----------
[mlir] Fix warnings
This patch fixes:
mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp:331:8:
error: unused variable 'srcVecTy' [-Werror,-Wunused-variable]
mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp:332:8:
error: unused variable 'destVecTy' [-Werror,-Wunused-variable]
Commit: 73340248599db068b7dfb0f316911ebe8b7bb365
https://github.com/llvm/llvm-project/commit/73340248599db068b7dfb0f316911ebe8b7bb365
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M libcxx/CMakeLists.txt
Log Message:
-----------
[libc++] Always build the dylib with hidden visibility (#131313)
The comment seems to be wrong by now. The only difference this makes for
GCC is that there are fewer private symbols exported from the dylib,
which can't ever be accessed by user code anyways.
Commit: 8352ca0d354f7f196eb2acd76740fdff9984664c
https://github.com/llvm/llvm-project/commit/8352ca0d354f7f196eb2acd76740fdff9984664c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512bwvl.ll
Log Message:
-----------
[X86] combineConcatVectorOps - fold(undef,zero) -> zero
Concat any mixture of zero/undefs to zero (we've already handled all undefs at this point).
Commit: 1617f90a6154dfd59e58da8b9513d903d899169a
https://github.com/llvm/llvm-project/commit/1617f90a6154dfd59e58da8b9513d903d899169a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Analysis/CGSCCPassManager.cpp
M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Analysis/MemorySSAUpdater.cpp
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/lib/Analysis/StackSafetyAnalysis.cpp
M llvm/lib/Analysis/SyntheticCountsUtils.cpp
Log Message:
-----------
[Analysis] Use *Set::insert_range (NFC) (#132878)
We can use *Set::insert_range to collapse:
for (auto Elem : Range)
Set.insert(E);
down to:
Set.insert_range(Range);
In some cases, we can further fold that into the set declaration.
Commit: f6823a0ae1b7c70f47a3bc82fa49bfce41ea7c03
https://github.com/llvm/llvm-project/commit/f6823a0ae1b7c70f47a3bc82fa49bfce41ea7c03
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Interfaces/ViewLikeInterface.h
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Conversion/MemRefToLLVM/expand-then-convert-to-llvm.mlir
M mlir/test/Dialect/Linalg/promote.mlir
M mlir/test/Dialect/MemRef/canonicalize.mlir
M mlir/test/Dialect/MemRef/expand-strided-metadata.mlir
M mlir/test/Dialect/MemRef/fold-memref-alias-ops.mlir
M mlir/test/Dialect/MemRef/invalid.mlir
M mlir/test/Dialect/MemRef/subview.mlir
M mlir/test/Transforms/canonicalize.mlir
M mlir/test/Transforms/compose-subview.mlir
Log Message:
-----------
Revert "[mlir][memref] Verify out-of-bounds access for `memref.subview`" (#132940)
Reverts llvm/llvm-project#131876
GPU integration tests get broken by this PR.
E.x.
`mlir/test/Integration/GPU/CUDA/sm90/gemm_f32_f16_f16_128x128x128.mlir`
Commit: a8e168e0c18bb7ac57361500cd98601160a107cc
https://github.com/llvm/llvm-project/commit/a8e168e0c18bb7ac57361500cd98601160a107cc
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M libcxx/include/__flat_map/flat_map.h
M libcxx/include/__memory/allocator_traits.h
M libcxx/include/__memory/uninitialized_algorithms.h
M libcxx/include/__vector/container_traits.h
M libcxx/include/deque
Log Message:
-----------
[libc++][NFC] Replace structs with variable templates in <__memory/allocator_traits.h> (#129237)
Variable templates are a bit easier on the compiler and improve the
readability of the code.
Commit: 629ff2d7ba382cc9a584658d94a81818a06c34f2
https://github.com/llvm/llvm-project/commit/629ff2d7ba382cc9a584658d94a81818a06c34f2
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/test/CodeGen/RISCV/imm.ll
A llvm/test/MC/RISCV/xqcili-li.s
Log Message:
-----------
[RISCV][Xqcili] Implement Load Immediate Support (#132496)
This is required to support `li`, but the code is also shared with
CodeGen so the compiler will now emit instructions from Xqcili when that
extension is enabled during compilation.
Also implemented some missed verifiers in
`RISCVInstrInfo::verifyInstruction`, some of which are required for this
change.
Commit: 2497945a95bd6e66120476892816c90e42a592fc
https://github.com/llvm/llvm-project/commit/2497945a95bd6e66120476892816c90e42a592fc
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Correctly annotate requires clause in `&& requires(` (#132882)
Fix #132334
Commit: 4fe2ad498efad016a16b960d6bc7c32882847879
https://github.com/llvm/llvm-project/commit/4fe2ad498efad016a16b960d6bc7c32882847879
Author: Jerry-Ge <jerry.ge at arm.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaShapeOps.td
Log Message:
-----------
[mlir][tosa] Align dialect summary and description sections to the TOSA v1.0 spec (#132835)
Align dialect summary and description sections to the TOSA v1.0 spec
* Updated the summary and description sections in the dialect to better
align with the TOSA v1.0 specification.
* Fixed the output variable names LogicalAndOp, LogicalRightShiftOp,
LogicalXorOp
* Removed some redundant comments
Signed-off-by: Jerry Ge <jerry.ge at arm.com>
Commit: 5159911a7c1476ff182363068d2a1169286bfb06
https://github.com/llvm/llvm-project/commit/5159911a7c1476ff182363068d2a1169286bfb06
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang][NFC] Update C++ DR status page
Commit: 60eb89f9fa0fd990c5cf2cc64d4202e3485d256e
https://github.com/llvm/llvm-project/commit/60eb89f9fa0fd990c5cf2cc64d4202e3485d256e
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M flang-rt/cmake/modules/AddFlangRT.cmake
Log Message:
-----------
[flang-rt] Fix typo using `static` instead of `shared`
Summary:
I copied this from the static usage, replaced the shared on the
dependency but not on the target.
Commit: f3a14217a995e5b086dea3677edb43e48e6b1af2
https://github.com/llvm/llvm-project/commit/f3a14217a995e5b086dea3677edb43e48e6b1af2
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
Log Message:
-----------
Fix maybe unused errors caused by #131527 (#132944)
Commit: feecb201ab041dbcf8266960aba4b252a789bcd4
https://github.com/llvm/llvm-project/commit/feecb201ab041dbcf8266960aba4b252a789bcd4
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/unittests/Support/YAMLIOTest.cpp
Log Message:
-----------
Reapply "[YAML][NFC] precommit wrong test case (#131782)" (#132936)
This reverts commit 64779455b8f4875c7de690dd4c3e324dbbcb3029.
Commit: 8f863fcd77e15caf3b7fde089adc223b0c4fb103
https://github.com/llvm/llvm-project/commit/8f863fcd77e15caf3b7fde089adc223b0c4fb103
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M .ci/monolithic-linux.sh
Log Message:
-----------
[clang][CI] Reuse build dir between C++26 and modules build of runtimes (#132480)
Between C++26 and Clang modules build of runtimes, which are used as an
additional testing for Clang, the only difference are
`LIBCXX_TEST_PARAMS` and `LIBCXXABI_TEST_PARAMS`. Both of them are
transformed into actual lit configuration lines, and put into
`SERIALIZED_LIT_PARAMS`, which end up in `libcxx/test/cmake-bridge.cfg`
via `configure_file` command. Notably, it seems that they are not used
in any other way.
I checked that if those variables are changed, subsequent runs of CMake
configuration step regenerate `cmake-bridge.cfg` with the new values.
Which means that we don't need to do clean builds for every runtimes
configuration we want to test.
I hope that together with #131913, this will be enough to alleviate
Linux CI pains we're having, and we wouldn't have to make a tough choice
between C++26 and Clang modules builds for pre-merge CI.
Commit: 23bf98e4b5b763534ec568c792989e83de580b04
https://github.com/llvm/llvm-project/commit/23bf98e4b5b763534ec568c792989e83de580b04
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M lldb/include/lldb/Core/Mangled.h
M lldb/include/lldb/Core/Module.h
M lldb/include/lldb/Interpreter/CommandInterpreter.h
M lldb/include/lldb/Symbol/SymbolFile.h
M lldb/include/lldb/Target/Target.h
M lldb/include/lldb/ValueObject/ValueObjectVariable.h
M lldb/source/Plugins/InstrumentationRuntime/Utility/Utility.cpp
M lldb/source/Plugins/InstrumentationRuntime/Utility/Utility.h
Log Message:
-----------
[lldb][docs][NFC] Fix some doxygen comments (#132910)
These weren't rendering properly (mostly mis-use the syntax for
commenting member variables).
Commit: 70aeb89094e8109cd072b7cbfbf05060c05e139a
https://github.com/llvm/llvm-project/commit/70aeb89094e8109cd072b7cbfbf05060c05e139a
Author: LU-JOHN <John.Lu at amd.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
A llvm/test/CodeGen/AMDGPU/vector_range_metadata.ll
Log Message:
-----------
Calculate KnownBits from Metadata correctly for vector loads (#128908)
Calculate KnownBits correctly from metadata for vector loads.
---------
Signed-off-by: John Lu <John.Lu at amd.com>
Commit: 1bb755fdcd61695c748d925ee756fc3cba4f15ae
https://github.com/llvm/llvm-project/commit/1bb755fdcd61695c748d925ee756fc3cba4f15ae
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M lldb/source/Plugins/InstrumentationRuntime/Utility/Utility.cpp
Log Message:
-----------
[lldb][Instrumentation] GetPreferredAsanModule should be no-op on non-Darwin platforms (#132911)
The regex we use to find the compiler-rt library is already
Darwin-specific, so no need to run this on non-Darwin platforms.
Commit: 9fb792496687df1136d78e828cffe4f7f04a7043
https://github.com/llvm/llvm-project/commit/9fb792496687df1136d78e828cffe4f7f04a7043
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M libc/src/time/time_utils.cpp
Log Message:
-----------
[libc][time] Fix -Wshorten-64-to-32 warning (#132947)
This breaks builds of libc with top of tree clang under -Werror.
Commit: cc08826b537c2e73013554cdaaf8ab06f2c0eb5e
https://github.com/llvm/llvm-project/commit/cc08826b537c2e73013554cdaaf8ab06f2c0eb5e
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/test/MC/AMDGPU/gfx11_asm_mubuf.s
M llvm/test/MC/AMDGPU/gfx11_asm_mubuf_err.s
Log Message:
-----------
[NFC][AMDGPU] Move buffer_load lds test from gfx11_asm_mubuf.s to gfx11_asm_mubuf_err.s (#132938)
The test checked that the lds flag for buffer_load instructions was not
supported. These should be moved to the _err counterpart of the tests.
Commit: 214fb43cb671d89d0e2da6dde348c6ffc360d7f0
https://github.com/llvm/llvm-project/commit/214fb43cb671d89d0e2da6dde348c6ffc360d7f0
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/MC/MCExpr.cpp
Log Message:
-----------
MCExpr: simplify evaluateAsRelocatableImpl after https://reviews.llvm.org/D156505
Commit: f4bb9b53ad09739ae120df66a317c9b89ddcaff0
https://github.com/llvm/llvm-project/commit/f4bb9b53ad09739ae120df66a317c9b89ddcaff0
Author: Julien Villette <julien.villette at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-mca.rst
M llvm/include/llvm/MC/MCSchedule.h
M llvm/lib/MC/MCSchedule.cpp
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-sve-instructions.s
A llvm/test/tools/llvm-mca/RISCV/SiFive7/instruction-tables-tests.s
M llvm/tools/llvm-mca/Views/InstructionInfoView.cpp
M llvm/tools/llvm-mca/Views/InstructionInfoView.h
M llvm/tools/llvm-mca/llvm-mca.cpp
Log Message:
-----------
[MCA] Extend -instruction-tables option with verbosity levels (#130574)
Option becomes: -instruction-tables=`<level>`
The choice of `<level>` controls number of printed information.
`<level>` may be `none` (default), `normal`, `full`.
Note: If the option is used without `<label>`, default is `normal`
(legacy).
When `<level>` is `full`, additional information are:
- `<Bypass Latency>`: Latency when a bypass is implemented between
operands
in pipelines (see SchedReadAdvance).
- `<LLVM Opcode Name>`: mnemonic plus operands identifier.
- `<Resources units>`: Used resources associated with LLVM Opcode.
- `<instruction comment>`: reports comment if any from source assembly.
Level `full` can be used to better check scheduling info when TableGen
is modified.
LLVM Opcode name help to find right instruction regexp to fix TableGen
Scheduling Info.
-instruction-tables=full option is validated on
AArch64/Neoverse/V1-sve-instructions.s
Follow up of MR #126703
---------
Co-authored-by: Julien Villette <julien.villette at sipearl.com>
Commit: bed4c581c2a73a437f13e278c0d654c01efb58a1
https://github.com/llvm/llvm-project/commit/bed4c581c2a73a437f13e278c0d654c01efb58a1
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/test/CodeGen/NVPTX/fp-contract.ll
Log Message:
-----------
[NVPTX] Check 'contract' fast-math flag in addition to global options (#131372)
Commit: 5f58f3dda8b17f664a85d4e5e3c808edde41ff46
https://github.com/llvm/llvm-project/commit/5f58f3dda8b17f664a85d4e5e3c808edde41ff46
Author: Ian Tayler Lessa <ian.taylerlessa at arm.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/test/Dialect/Tosa/constant-op-fold.mlir
Log Message:
-----------
[mlir][tosa] Avoid overflow in reduction folders (#132786)
Avoid operations that can overflow in constant folders for
`tosa.reduce_max` and `tosa.reduce_min`
Includes tests to avoid regressions
Signed-off-by: Ian Tayler Lessa <ian.taylerlessa at arm.com>
Commit: 8fb802e995868f19f40ff7a14df6f38b248af3ce
https://github.com/llvm/llvm-project/commit/8fb802e995868f19f40ff7a14df6f38b248af3ce
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Improve code in collectInstsToScalarize (NFC) (#130643)
Commit: 0919ab3cb64668d771540c83fe439da8796b9ada
https://github.com/llvm/llvm-project/commit/0919ab3cb64668d771540c83fe439da8796b9ada
Author: Pranav Kant <prka at google.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/aarch64-neon-vector-insert-uaddlv.ll
M llvm/test/CodeGen/AArch64/arm64-convert-v4f64.ll
M llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
M llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
M llvm/test/CodeGen/AArch64/complex-int-to-fp.ll
M llvm/test/CodeGen/AArch64/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/AArch64/fp-intrinsics-vector.ll
M llvm/test/CodeGen/AArch64/fprcvt-cvtf.ll
M llvm/test/CodeGen/AArch64/itofp-bf16.ll
M llvm/test/CodeGen/AArch64/itofp.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-int-to-fp.ll
M llvm/test/CodeGen/AArch64/vector-fcvt.ll
Log Message:
-----------
[AArch64] Don't try to vectorize fixed point to fp narrowing conversion (#130665)
GCC, correctly, doesn't vectorize in this case. Absence of direct
instructions to convert larger fixed point to lower floating point
precision inadvertently causes rounding leading to subtle differences
across ISAs.
https://godbolt.org/z/ssEchMWrE
Co-authored by: @echristo
Commit: 870463519bab45acf8590d41d9f2a161c37f26d5
https://github.com/llvm/llvm-project/commit/870463519bab45acf8590d41d9f2a161c37f26d5
Author: jimingham <jingham at apple.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
A lldb/test/API/functionalities/breakpoint/nested_breakpoint_commands/Makefile
A lldb/test/API/functionalities/breakpoint/nested_breakpoint_commands/TestNestedBreakpointCommands.py
A lldb/test/API/functionalities/breakpoint/nested_breakpoint_commands/main.c
A lldb/test/API/functionalities/breakpoint/nested_breakpoint_commands/make_bkpt_cmds.py
Log Message:
-----------
Fix the managing of the session dictionary when you have nested wrappers (#132846)
Since the inner wrapper call might have removed one of the entries from
the global dict that the outer wrapper ALSO was going to delete, make
sure that we check that the key is still in the global dict before
trying to act on it.
Commit: 7b3885d47b294940c34f01e82b084fe104e93dba
https://github.com/llvm/llvm-project/commit/7b3885d47b294940c34f01e82b084fe104e93dba
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGLOps.td
M mlir/test/Dialect/SPIRV/IR/gl-ops.mlir
M mlir/test/Target/SPIRV/gl-ops.mlir
Log Message:
-----------
[mlir][spirv] Add definition for GL Fract (#132921)
Commit: 92e0560347196c5341ed0292878e2b4f8dba414f
https://github.com/llvm/llvm-project/commit/92e0560347196c5341ed0292878e2b4f8dba414f
Author: vdonaldson <37090318+vdonaldson at users.noreply.github.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M flang-rt/lib/runtime/exceptions.cpp
M flang/include/flang/Evaluate/target.h
M flang/include/flang/Optimizer/Builder/Runtime/Exceptions.h
M flang/include/flang/Runtime/exceptions.h
M flang/include/flang/Tools/TargetSetup.h
M flang/lib/Evaluate/fold-logical.cpp
M flang/lib/Evaluate/target.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Exceptions.cpp
M flang/test/Lower/Intrinsics/ieee_compare.f90
M flang/test/Lower/Intrinsics/ieee_flag.f90
M flang/test/Lower/Intrinsics/ieee_logb.f90
M flang/test/Lower/Intrinsics/ieee_max_min.f90
M flang/test/Lower/Intrinsics/ieee_next.f90
M flang/test/Lower/Intrinsics/ieee_real.f90
M flang/test/Lower/Intrinsics/ieee_rem.f90
M flang/test/Lower/Intrinsics/ieee_rint_int.f90
M flang/test/Lower/Intrinsics/nearest.f90
Log Message:
-----------
[flang] ieee_denorm (#132307)
Add support for the nonstandard ieee_denorm exception for real kinds 3,
4, 8 on x86 processors.
Commit: 6ddc07163d6c781622384eb83c7220d3051243a6
https://github.com/llvm/llvm-project/commit/6ddc07163d6c781622384eb83c7220d3051243a6
Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel
Log Message:
-----------
Disable some tests on bazel (#132951)
These tests failed at Google after #130757. Disable them in bazel for the time being.
Commit: 2c8e26081fc5a023471622ddc98638431c66ac6f
https://github.com/llvm/llvm-project/commit/2c8e26081fc5a023471622ddc98638431c66ac6f
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M flang-rt/lib/runtime/command.cpp
M flang/docs/Intrinsics.md
M flang/include/flang/Common/windows-include.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/Runtime/Command.h
M flang/include/flang/Runtime/command.h
M flang/include/flang/Runtime/extensions.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Command.cpp
A flang/test/Lower/Intrinsics/hostnm-func.f90
A flang/test/Lower/Intrinsics/hostnm-sub.f90
A flang/test/Semantics/hostnm.f90
Log Message:
-----------
[flang] Add HOSTNM runtime and lowering intrinsics implementation (#131910)
Implement GNU extension intrinsic HOSTNM, both function and subroutine
forms. Add HOSTNM documentation to `flang/docs/Intrinsics.md`. Add
lowering and semantic unit tests.
(This change is modeled after GETCWD implementation.)
Commit: 25938389c023e7122a03cd4d3536187542046c65
https://github.com/llvm/llvm-project/commit/25938389c023e7122a03cd4d3536187542046c65
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/agpr-csr.ll
Log Message:
-----------
[AMDGPU] Autogen checks for agpr-csr.ll (#132959)
Needed for a RegisterCoalescer patch
Commit: 357306572d4734a75e649284b4808299d0aba9c8
https://github.com/llvm/llvm-project/commit/357306572d4734a75e649284b4808299d0aba9c8
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/utility
M libcxx/test/libcxx/transitive_includes/cxx26.csv
A libcxx/test/std/utilities/utility/utility.monostate.relpos/relops.pass.cpp
A libcxx/test/std/utilities/utility/utility.monostate/monostate.pass.cpp
Log Message:
-----------
[libcxx] Put `std::monostate` in `<utility>` (#128373)
Fixes: #127874
Commit: 74c2c049d12cf9c2aa1ce8bcf16048f4a084dd90
https://github.com/llvm/llvm-project/commit/74c2c049d12cf9c2aa1ce8bcf16048f4a084dd90
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/test/Dialect/LLVMIR/alias.mlir
M mlir/test/Target/LLVMIR/Import/alias.ll
Log Message:
-----------
[MLIR][LLVM] Add weak_odr to allowed linkage for alias (#132840)
I missed this when originally introduced the feature (note the verifier
message already contains it), this fixes a small bug.
Commit: 53fa28940e0a3ef183e04dd8bc8566d64bbfd101
https://github.com/llvm/llvm-project/commit/53fa28940e0a3ef183e04dd8bc8566d64bbfd101
Author: Michael Spencer <bigcheesegs at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/include/clang/Lex/ModuleMap.h
M clang/lib/Lex/ModuleMap.cpp
Log Message:
-----------
[clang] Remove unused member variable from ModuleMap
This became unused when module map parsing moved to ModuleMapFile.cpp.
Commit: 2f8d6998451dd8c4095fb60f087eca36974f5d74
https://github.com/llvm/llvm-project/commit/2f8d6998451dd8c4095fb60f087eca36974f5d74
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll
M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_elt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.append.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.consume.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.gws.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.gws.init.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.lds.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.lds.ll
Log Message:
-----------
[AMDGPU][SelectionDAG] Use COPY instead of S_MOV_B32 to assign values to M0 (#132957)
This is consistent with what's done on GISel. This allows the register
coalescer to remove the redundant intermediate `s_mov_b32` instructions
by using `m0` directly as the result register.
Commit: dfb6c761f75581f4230d1e9ec6a569686f0bf11c
https://github.com/llvm/llvm-project/commit/dfb6c761f75581f4230d1e9ec6a569686f0bf11c
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ASTContext.cpp
M clang/test/SemaCXX/sugar-common-types.cpp
Log Message:
-----------
[clang] ASTContex: fix getCommonSugaredType for array types (#132559)
This corrects the behaviour for getCommonSugaredType with regards to
array top level qualifiers: remove differing top level qualifiers, as
they must be redundant with element qualifiers.
Fixes https://github.com/llvm/llvm-project/issues/97005
Commit: 51dad714e82e3e15c339aade8be605ed09bbabab
https://github.com/llvm/llvm-project/commit/51dad714e82e3e15c339aade8be605ed09bbabab
Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/test/Transforms/GlobalOpt/cleanup-pointer-root-users-gep-constexpr.ll
M llvm/test/Transforms/GlobalOpt/dead-store-status.ll
M llvm/test/Transforms/GlobalOpt/pr54572.ll
Log Message:
-----------
[GlobalOpt] Handle operators separately when removing GV users (#84694)
Refactor globalopt by eliminating redundant code. Fix
https://github.com/llvm/llvm-project/issues/64680.
Commit: e16e93a4c7d9a0154d9e136f164a88eaa9e3768b
https://github.com/llvm/llvm-project/commit/e16e93a4c7d9a0154d9e136f164a88eaa9e3768b
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/test/Transforms/GlobalOpt/cleanup-pointer-root-users-gep-constexpr.ll
M llvm/test/Transforms/GlobalOpt/dead-store-status.ll
M llvm/test/Transforms/GlobalOpt/pr54572.ll
Log Message:
-----------
Revert "[GlobalOpt] Handle operators separately when removing GV users" (#132971)
Reverts llvm/llvm-project#84694 . Review was incomplete.
Commit: fc5b4d4a9d807bce07f5ce719e877707381f52c4
https://github.com/llvm/llvm-project/commit/fc5b4d4a9d807bce07f5ce719e877707381f52c4
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M libcxx/include/__vector/vector.h
Log Message:
-----------
[libc++] Rename __construct_one_at_end to __emplace_back_assume_capacity (#132276)
This makes it clear that the end of the vector is updated when calling
the function.
Commit: 9243f99d17c0165800fd1f2f92c5c975cf702414
https://github.com/llvm/llvm-project/commit/9243f99d17c0165800fd1f2f92c5c975cf702414
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M libc/src/__support/CPP/atomic.h
M libc/test/src/__support/CPP/atomic_test.cpp
Log Message:
-----------
[libc] Add support for C++20 'atomic_ref' type (#132302)
Summary:
C++20 introduced an atomic reference type, which more easily wraps
around the standard way of dealing with atomics. Instead of a dedicated
type, it allows you to treat an existing allocation as atomic.
This has no users yet, but I'm hoping to use it when I start finalizing
my GPU allocation interface, as it will need to handle atomic values
in-place that can't be done with placement new. Hopefully this is small
enough that we can just keep it in-tree until it's needed, but I'll
accept holding it here until it has a user.
I added one extension to allow implicit conversion and CTAD.
Commit: b0668d859b237f6991f416b688cedb7389354fd8
https://github.com/llvm/llvm-project/commit/b0668d859b237f6991f416b688cedb7389354fd8
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M libcxx/include/__algorithm/sort.h
M libcxx/include/__algorithm/stable_sort.h
M libcxx/include/__functional/reference_wrapper.h
M libcxx/include/__type_traits/desugars_to.h
A libcxx/test/libcxx/type_traits/desugars_to.compile.pass.cpp
A libcxx/test/libcxx/utilities/function.objects/refwrap/desugars_to.compile.pass.cpp
Log Message:
-----------
[libc++] Make sure that __desugars_to isn't tripped up by reference_wrapper, const and ref qualifiers (#132092)
Previously, const and ref qualification on an operation would cause
__desugars_to to report false, which would lead to unnecessary
pessimizations. The same holds for reference_wrapper.
In practice, const and ref qualifications on the operation itself are
not relevant to determining whether an operation desugars to something
else or not, so can be ignored.
We are not stripping volatile qualifiers from operations in this patch
because we feel that this requires additional discussion.
Fixes #129312
Commit: 3bcbb472586fddf66c58011e57e08550d59ea8e5
https://github.com/llvm/llvm-project/commit/3bcbb472586fddf66c58011e57e08550d59ea8e5
Author: Alex Hoppen <ahoppen at apple.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang-tools-extra/clangd/refactor/Rename.cpp
M clang-tools-extra/clangd/refactor/Rename.h
M clang-tools-extra/clangd/unittests/RenameTests.cpp
Log Message:
-----------
[clangd] Use `SymbolName` to represent Objective-C selectors (#82061)
This is a cleaner design than using identifier and an optional `Selector`. It also allows rename of Objective-C method names if no declaration is at hand and thus no `Selector` instance can be formed. For example, when finding the ranges to rename based on an index that’s not clangd’s built-in index.
Commit: f7f5aa217a81f2ec036fee765124bd2057531d86
https://github.com/llvm/llvm-project/commit/f7f5aa217a81f2ec036fee765124bd2057531d86
Author: Jinsong Ji <jinsong.ji at intel.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/tools/amdgpu-arch/AMDGPUArchByHIP.cpp
Log Message:
-----------
[Clang][AMDGPU] Use size_t to compare with npos (#132868)
Fix error
llvm\clang\tools\amdgpu-arch\AMDGPUArchByHIP.cpp(102,29): error: result
of comparison of constant 18446744073709551615 with expression of type
'unsigned int' is always false
[-Werror,-Wtautological-constant-out-of-range-compare]
102 | StringRef VerStr = (Pos == StringRef::npos) ? S : S.substr(Pos +
1);
Commit: b6b40e9ac980518d7270b4ac880496b91efc8ca5
https://github.com/llvm/llvm-project/commit/b6b40e9ac980518d7270b4ac880496b91efc8ca5
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
M bolt/test/binary-analysis/AArch64/gs-pacret-multi-bb.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
Log Message:
-----------
[BOLT] Gadget scanner: reformulate the state for data-flow analysis (#131898)
In preparation for implementing support for detection of non-protected
call instructions, refine the definition of state which is computed for
each register by data-flow analysis.
Explicitly marking the registers which are known to be trusted at
function entry is crucial for finding non-protected calls. In addition,
it fixes less-common false negatives for pac-ret, such as `ret x1` in
`f_nonx30_ret_non_auted` test case.
Commit: 011a95c5367e55820e134d99446a176d21e32dc8
https://github.com/llvm/llvm-project/commit/011a95c5367e55820e134d99446a176d21e32dc8
Author: Julien Villette <julien.villette at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/test/tools/llvm-mca/RISCV/SiFive7/instruction-tables-tests.s
Log Message:
-----------
[MCA] Update of RISCV/SiFive7/instruction-tables-tests.s (#132972)
Fixing MR #130574 after merge in main branch.
Throughput has been updated in between.
Co-authored-by: Julien Villette <julien.villette at sipearl.com>
Commit: 613a077b05b8352a48695be295037306f5fca151
https://github.com/llvm/llvm-project/commit/613a077b05b8352a48695be295037306f5fca151
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M flang-rt/CMakeLists.txt
R flang-rt/cmake/clang_gcc_root.cpp
M flang-rt/cmake/quadmath_wrapper.h.in
M flang-rt/lib/quadmath/CMakeLists.txt
M flang/cmake/modules/FlangCommon.cmake
A flang/cmake/quadmath_wrapper.h.in
M flang/lib/Evaluate/CMakeLists.txt
M flang/lib/Evaluate/host.h
M flang/lib/Evaluate/intrinsics-library.cpp
Log Message:
-----------
[flang] Generate quadmath_wrapper.h for Flang Evaluate. (#132817)
When building Flang with Clang, we need to do the same quadmath.h
wrapping as we do for flang-rt. I extracted the CMake code
into FlangCommon.cmake, and cleaned up the arguments passing
to execute_process (note that `-###` was treated as `-` in the original
code, because `#` starts a comment). I believe the Clang command
does not require the input source file, so I removed it as well.
Commit: 7a370748c0928b9ccfe26127e54eb3c1a1827d75
https://github.com/llvm/llvm-project/commit/7a370748c0928b9ccfe26127e54eb3c1a1827d75
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/unittests/StdLibTests.cpp
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang-tools-extra/modularize/ModularizeUtilities.h
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Lex/HeaderSearch.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
M clang/unittests/Basic/SourceManagerTest.cpp
M clang/unittests/Lex/HeaderSearchTest.cpp
M clang/unittests/Lex/LexerTest.cpp
M clang/unittests/Lex/ModuleDeclStateTest.cpp
M clang/unittests/Lex/PPCallbacksTest.cpp
M clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp
M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
M clang/unittests/Lex/PPMemoryAllocationsTest.cpp
Log Message:
-----------
[clang][lex] Store non-owning options ref in `HeaderSearch` (#132780)
This makes it so that `CompilerInvocation` can be the only entity that
manages ownership of `HeaderSearchOptions`, making it possible to
implement copy-on-write semantics.
Commit: bdbad3e4320509f632ae8b511d563136343d87d7
https://github.com/llvm/llvm-project/commit/bdbad3e4320509f632ae8b511d563136343d87d7
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
Log Message:
-----------
[lldb] Fix build after #132780
Commit: 57f2e76e3010e7b089ebc5dd96aef5966f13b6c5
https://github.com/llvm/llvm-project/commit/57f2e76e3010e7b089ebc5dd96aef5966f13b6c5
Author: Michael Spencer <bigcheesegs at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang-tools-extra/modularize/ModuleAssistant.cpp
M clang/include/clang/Lex/ModuleMap.h
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/ModuleMap.cpp
Log Message:
-----------
[clang] Consistently use "load" to refer to populating clang::ModuleMap (#132970)
Now that we have ModuleMapFile.cpp which parses module maps, it's
confusing what ModuleMap::parseModuleMapFile actually does. HeaderSearch
already called this loading a module map, so consistently use that term
in ModuleMap too.
An upcoming patch will allow just parsing a module map without loading
the modules from it.
Commit: 4067581aea299692d37866183b0a535f561892ad
https://github.com/llvm/llvm-project/commit/4067581aea299692d37866183b0a535f561892ad
Author: marius doerner <marius.doerner1 at icloud.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprConstant.cpp
M clang/test/SemaCXX/cxx2c-constexpr-placement-new.cpp
Log Message:
-----------
[clang] Placement new error when modifying consts (#132460)
Raise an error when placement new is used to modify a const-qualified
variable in a constexpr function.
Fixes #131432
Commit: aacc4e9a38ad93482e6c19a53eefec8406ee1b40
https://github.com/llvm/llvm-project/commit/aacc4e9a38ad93482e6c19a53eefec8406ee1b40
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang-tools-extra/modularize/ModularizeUtilities.cpp
Log Message:
-----------
[modularize] Fix the build
This patch fixes:
clang-tools-extra/modularize/ModularizeUtilities.cpp:293:15: error:
no member named 'parseModuleMapFile' in 'clang::ModuleMap'; did you
mean 'loadModuleMapFile'?
Commit: 535b28444f8e1284583c3771eaf64e1e27bbcb28
https://github.com/llvm/llvm-project/commit/535b28444f8e1284583c3771eaf64e1e27bbcb28
Author: Zequan Wu <zequanwu at google.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
M llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp
A llvm/test/tools/llvm-symbolizer/use-debug-info-line-info.s
Log Message:
-----------
[Symbolize] Always use filename:line from debug info when debug info for the given address is available. (#128619)
To reland https://github.com/llvm/llvm-project/pull/124846, we need to
make symbolizer consistent with the case when line number is 0. Always
using filename and line from debug info even if the line number is 0
sounds like the reasonable path to go.
Commit: 9aecbdf8ed787a8edd1b7f97a1c7fbf6e9d12515
https://github.com/llvm/llvm-project/commit/9aecbdf8ed787a8edd1b7f97a1c7fbf6e9d12515
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
Log Message:
-----------
[clang][DepScan] Allow ModuleDep to be const (#132968)
This type can be exposed from C APIs, where instantiations of this type
are not expected to mutate after creation. To support this, mark the
lazy computation of build arguments mutable, as that is not intended to
otherwise mutate the state of these objects.
This was reviewed separately by @jansvoboda11
Commit: e7e242e7ad6901e5f4c85d6e5ee4455d6be29b50
https://github.com/llvm/llvm-project/commit/e7e242e7ad6901e5f4c85d6e5ee4455d6be29b50
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/test/Target/LLVMIR/Import/exception.ll
Log Message:
-----------
[MLIR][LLVM] Fix debug value/declare import in face of landing pads (#132871)
Debug value/declare operations imported before landing pad operations at
the bb start break invoke op verification:
```
error: first operation in unwind destination should be a llvm.landingpad operation
```
This this issue by making the placement slightly more smart.
Commit: fd3a6b6005aa591a53fc01e4ed130af369e0c366
https://github.com/llvm/llvm-project/commit/fd3a6b6005aa591a53fc01e4ed130af369e0c366
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.cpp
M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.h
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
A llvm/test/Analysis/CostModel/NVPTX/inline-asm.ll
A llvm/test/Analysis/CostModel/NVPTX/lit.local.cfg
A llvm/test/CodeGen/NVPTX/nvptx-aa-inline-asm.ll
Log Message:
-----------
[NVPTX] Improve modeling of inline PTX (#130675)
Improve the modeling of the memory effects and instruction cost of
inline assembly.
- MemoryEffects: The CUDA spec states that inline assembly is not
assumed to have any side-effects or read or write to memory. An inline
assembly may be treated as NoModRef unless it is explictly marked as
having side effects or has an explicit memory clobber.
https://docs.nvidia.com/cuda/inline-ptx-assembly/index.html#incorrect-optimization
> Normally any memory that is written to will be specified as an out
operand, but if there is a hidden read or write on user memory (for
example, indirect access of a memory location via an operand), or if you
want to stop any memory optimizations around the asm() statement
performed during generation of PTX, you can add a “memory” clobbers
specification after a 3rd colon.
- InstructionCost: This change implements very rough string parsing
system to count the number of instructions in an inline-asm. There are
corner cases it will not handle well, but in general this is an
improvement over the current cost of the number of arguments plus one.
Commit: a074831cd978659a6025c528c0ca75b8cf46940f
https://github.com/llvm/llvm-project/commit/a074831cd978659a6025c528c0ca75b8cf46940f
Author: Pete Chou <petechou at gmail.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
A llvm/test/TableGen/RegisterInfoEmitter-inherit-properties.td
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
Log Message:
-----------
[TableGen] Inherit properties from the nearest allocatable superclass. (#127018)
Previously isAlocatable was updated to allow inheritance from any
superclass for a generated register class, but other properties are
still inherited from its nearest superclass. This could cause
a generated regclass inherit undesired properties, e.g., tsflags, from
an unallocatable superclass due to the topological inheritance order.
This change updates to inherit properties from the nearest allocatable
superclass if possible and includes a test to demonstrate a potential
incorrect inheritance of tsflags.
Commit: 577631f0a52884384786bf899951e3094ad7f69c
https://github.com/llvm/llvm-project/commit/577631f0a52884384786bf899951e3094ad7f69c
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-unroll.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory.ll
M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll
Log Message:
-----------
Reapply "[VPlan] Add transformation to narrow interleave groups. (#106441)"
This reverts commit ff3e2ba9eb94217f3ad3525dc18b0c7b684e0abf.
The recommmitted version limits to transform to cases where no
interleaving is taking place, to avoid a mis-compile when interleaving.
Original commit message:
This patch adds a new narrowInterleaveGroups transfrom, which tries
convert a plan with interleave groups with VF elements to a plan that
instead replaces the interleave groups with wide loads and stores
processing VF elements.
This effectively is a very simple form of loop-aware SLP, where we
use interleave groups to identify candidates.
This initial version is quite restricted and hopefully serves as a
starting point for how to best model those kinds of transforms.
Depends on https://github.com/llvm/llvm-project/pull/106431.
Fixes https://github.com/llvm/llvm-project/issues/82936.
PR: https://github.com/llvm/llvm-project/pull/106441
Commit: 272a3d06a0ca76de146d64b0b6715a1eb61041c8
https://github.com/llvm/llvm-project/commit/272a3d06a0ca76de146d64b0b6715a1eb61041c8
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M .ci/metrics/metrics.py
M .ci/metrics/requirements.lock.txt
M .ci/metrics/requirements.txt
M .ci/monolithic-linux.sh
M .github/workflows/build-ci-container.yml
M .github/workflows/build-metrics-container.yml
M .github/workflows/ci-post-commit-analyzer.yml
M .github/workflows/commit-access-greeter.yml
M .github/workflows/commit-access-review.yml
M .github/workflows/containers/github-action-ci/Dockerfile
M .github/workflows/docs.yml
M .github/workflows/email-check.yaml
M .github/workflows/issue-release-workflow.yml
M .github/workflows/issue-subscriber.yml
M .github/workflows/issue-write.yml
M .github/workflows/libc-fullbuild-tests.yml
M .github/workflows/libc-overlay-tests.yml
M .github/workflows/libclang-abi-tests.yml
M .github/workflows/libclang-python-tests.yml
M .github/workflows/libcxx-build-and-test.yaml
M .github/workflows/libcxx-build-containers.yml
M .github/workflows/libcxx-check-generated-files.yml
M .github/workflows/libcxx-restart-preempted-jobs.yaml
M .github/workflows/llvm-bugs.yml
M .github/workflows/llvm-project-tests.yml
M .github/workflows/llvm-tests.yml
M .github/workflows/merged-prs.yml
M .github/workflows/new-issues.yml
M .github/workflows/new-prs.yml
M .github/workflows/pr-code-format.yml
M .github/workflows/pr-request-release-note.yml
M .github/workflows/pr-subscriber.yml
M .github/workflows/release-asset-audit.py
M .github/workflows/release-asset-audit.yml
M .github/workflows/release-binaries-all.yml
M .github/workflows/release-binaries.yml
M .github/workflows/release-documentation.yml
M .github/workflows/release-doxygen.yml
M .github/workflows/release-lit.yml
M .github/workflows/release-sources.yml
M .github/workflows/release-tasks.yml
M .github/workflows/scorecard.yml
M .github/workflows/version-check.yml
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/BinarySection.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Core/Relocation.h
R bolt/include/bolt/Passes/ContinuityStats.h
R bolt/include/bolt/Passes/NonPacProtectedRetAnalysis.h
A bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/include/bolt/Passes/PatchEntries.h
A bolt/include/bolt/Passes/ProfileQualityStats.h
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryData.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/JumpTable.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Core/Relocation.cpp
M bolt/lib/Passes/ADRRelaxationPass.cpp
M bolt/lib/Passes/Aligner.cpp
M bolt/lib/Passes/AsmDump.cpp
M bolt/lib/Passes/CMakeLists.txt
R bolt/lib/Passes/ContinuityStats.cpp
M bolt/lib/Passes/FrameOptimizer.cpp
M bolt/lib/Passes/Instrumentation.cpp
R bolt/lib/Passes/NonPacProtectedRetAnalysis.cpp
A bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Passes/PLTCall.cpp
M bolt/lib/Passes/PatchEntries.cpp
A bolt/lib/Passes/ProfileQualityStats.cpp
M bolt/lib/Passes/RetpolineInsertion.cpp
M bolt/lib/Passes/StokeInfo.cpp
M bolt/lib/Passes/TailDuplication.cpp
M bolt/lib/Profile/StaleProfileMatching.cpp
M bolt/lib/Profile/YAMLProfileReader.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
A bolt/lib/Target/AArch64/AArch64MCSymbolizer.cpp
A bolt/lib/Target/AArch64/AArch64MCSymbolizer.h
M bolt/lib/Target/AArch64/CMakeLists.txt
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
M bolt/lib/Utils/CommandLineOpts.cpp
M bolt/runtime/hugify.cpp
A bolt/test/AArch64/computed-goto.s
A bolt/test/AArch64/got-load-symbolization.s
M bolt/test/AArch64/test-indirect-branch.s
A bolt/test/Inputs/indirect_goto.c
M bolt/test/X86/Inputs/define_bar.s
R bolt/test/X86/Inputs/indirect_goto.c
R bolt/test/X86/cfg-discontinuity-reporting.test
M bolt/test/X86/icf-safe-icp.test
M bolt/test/X86/icf-safe-process-rela-data.test
M bolt/test/X86/icf-safe-test1.test
M bolt/test/X86/icf-safe-test2GlobalConstPtrNoPic.test
R bolt/test/X86/indirect-goto-pie.test
M bolt/test/X86/indirect-goto.test
A bolt/test/X86/profile-quality-reporting.test
A bolt/test/avoid-wx-segment.c
M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
M bolt/test/binary-analysis/AArch64/gs-pacret-multi-bb.s
A bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
A bolt/test/indirect-goto-relocs.test
M bolt/tools/bat-dump/bat-dump.cpp
M bolt/tools/driver/llvm-bolt.cpp
M bolt/tools/merge-fdata/merge-fdata.cpp
M bolt/utils/docker/Dockerfile
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/assets/index.js
M clang-tools-extra/clang-move/Move.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.h
M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/UnintendedCharOstreamOutputCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/UnintendedCharOstreamOutputCheck.h
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdNumbersCheck.cpp
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
A clang-tools-extra/clang-tidy/readability/AmbiguousSmartptrResetCallCheck.cpp
A clang-tools-extra/clang-tidy/readability/AmbiguousSmartptrResetCallCheck.h
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/CodeComplete.h
M clang-tools-extra/clangd/Config.h
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/ConfigFragment.h
M clang-tools-extra/clangd/ConfigYAML.cpp
M clang-tools-extra/clangd/HeaderSourceSwitch.cpp
M clang-tools-extra/clangd/IncludeFixer.cpp
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/Preamble.cpp
M clang-tools-extra/clangd/ProjectModules.h
M clang-tools-extra/clangd/ScanningProjectModules.cpp
M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
M clang-tools-extra/clangd/TidyProvider.cpp
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/clangd/refactor/Rename.cpp
M clang-tools-extra/clangd/refactor/Rename.h
M clang-tools-extra/clangd/refactor/tweaks/AnnotateHighlightings.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang-tools-extra/clangd/unittests/HeaderSourceSwitchTests.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
M clang-tools-extra/clangd/unittests/RenameTests.cpp
M clang-tools-extra/clangd/unittests/StdLibTests.cpp
M clang-tools-extra/clangd/unittests/TestIndex.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/Contributing.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/capturing-this-in-member-variable.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-optional-access.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/unintended-char-ostream-output.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/const-correctness.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-starts-ends-with.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-value-param.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.rst
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang-tools-extra/modularize/ModularizeUtilities.h
M clang-tools-extra/modularize/ModuleAssistant.cpp
A clang-tools-extra/test/clang-doc/DR-131697.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Calculator.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Circle.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Rectangle.cpp
M clang-tools-extra/test/clang-doc/basic-project.test
M clang-tools-extra/test/clang-doc/enum.cpp
M clang-tools-extra/test/clang-doc/namespace.cpp
M clang-tools-extra/test/clang-doc/single-file-public.cpp
M clang-tools-extra/test/clang-doc/single-file.cpp
M clang-tools-extra/test/clang-doc/templates.cpp
M clang-tools-extra/test/clang-doc/test-path-abs.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/capturing-this-in-member-variable.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/optional-value-conversion-construct-from-std.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unintended-char-ostream-output-cast-type.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unintended-char-ostream-output.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-allowed-types.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers-values.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-transform-pointer-as-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-transform-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values-before-cxx23.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-wrong-config.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-macro.hpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-numbers.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/ambiguous-smartptr-reset-call-custom-pointers.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/ambiguous-smartptr-reset-call.cpp
A clang/AreaTeamMembers.txt
M clang/Maintainers.rst
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_cdb.py
M clang/bindings/python/tests/cindex/test_cursor.py
M clang/bindings/python/tests/cindex/test_index.py
M clang/bindings/python/tests/cindex/test_location.py
M clang/bindings/python/tests/cindex/test_translation_unit.py
M clang/bindings/python/tests/cindex/test_type.py
M clang/cmake/caches/BOLT.cmake
M clang/cmake/caches/Release.cmake
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ClangOffloadBundler.rst
M clang/docs/CommandGuide/clang.rst
M clang/docs/HIPSupport.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/LibASTMatchersReference.html
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/ThreadSafetyAnalysis.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/docs/UsersManual.rst
M clang/docs/analyzer/checkers.rst
M clang/docs/analyzer/developer-docs.rst
A clang/docs/analyzer/developer-docs/Statistics.rst
M clang/docs/tools/dump_ast_matchers.py
M clang/include/clang-c/Index.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/Attr.h
M clang/include/clang/AST/AttrIterator.h
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclID.h
A clang/include/clang/AST/DeclOpenACC.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/DeclVisitor.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/JSONNodeDumper.h
M clang/include/clang/AST/Mangle.h
M clang/include/clang/AST/NestedNameSpecifier.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Stmt.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/Analysis/Analyses/ThreadSafety.h
M clang/include/clang/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.h
M clang/include/clang/Analysis/FlowSensitive/SmartPointerAccessorCaching.h
M clang/include/clang/Analysis/ProgramPoint.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
A clang/include/clang/Basic/BuiltinTemplates.td
M clang/include/clang/Basic/Builtins.h
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/include/clang/Basic/BuiltinsX86.td
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/DeclNodes.td
M clang/include/clang/Basic/Diagnostic.td
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticOptions.h
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/FileManager.h
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Basic/Module.h
M clang/include/clang/Basic/ObjCRuntime.h
M clang/include/clang/Basic/OpenACCClauses.def
M clang/include/clang/Basic/OpenMPKinds.def
M clang/include/clang/Basic/OpenMPKinds.h
M clang/include/clang/Basic/Sanitizers.def
M clang/include/clang/Basic/Specifiers.h
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/TargetOptions.h
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Basic/arm_mve.td
M clang/include/clang/Basic/arm_mve_defs.td
M clang/include/clang/Basic/arm_sve.td
M clang/include/clang/Basic/riscv_vector.td
M clang/include/clang/CIR/CIRGenerator.h
A clang/include/clang/CIR/CIRToCIRPasses.h
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/CMakeLists.txt
R clang/include/clang/CIR/Dialect/IR/CIRAttrVisitor.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/include/clang/CIR/Dialect/IR/CIROpsEnums.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/include/clang/CIR/Dialect/IR/CMakeLists.txt
A clang/include/clang/CIR/Dialect/Passes.h
A clang/include/clang/CIR/Dialect/Passes.td
A clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.h
A clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.td
A clang/include/clang/CIR/Interfaces/CIROpInterfaces.h
A clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
M clang/include/clang/CIR/Interfaces/CMakeLists.txt
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Driver/Action.h
M clang/include/clang/Driver/OffloadBundler.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/ToolChain.h
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/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Frontend/VerifyDiagnosticConsumer.h
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Lex/HeaderSearchOptions.h
M clang/include/clang/Lex/Lexer.h
M clang/include/clang/Lex/LiteralSupport.h
M clang/include/clang/Lex/ModuleMap.h
A clang/include/clang/Lex/ModuleMapFile.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/HLSLExternalSemaSource.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/ParsedAttr.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaBase.h
M clang/include/clang/Sema/SemaCodeCompletion.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTRecordReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/include/clang/Serialization/ASTWriter.h
A clang/include/clang/Serialization/ModuleCache.h
M clang/include/clang/Serialization/ModuleManager.h
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h
M clang/include/clang/StaticAnalyzer/Core/Checker.h
M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
A clang/include/clang/StaticAnalyzer/Core/PathSensitive/EntryPointStats.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h
M clang/include/clang/Support/Compiler.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
A clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.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/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Descriptor.h
M clang/lib/AST/ByteCode/DynamicAllocator.cpp
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Program.h
M clang/lib/AST/CMakeLists.txt
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclBase.cpp
A clang/lib/AST/DeclOpenACC.cpp
M clang/lib/AST/DeclPrinter.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/NestedNameSpecifier.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/ParentMapContext.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/AST/Stmt.cpp
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/ASTMatchers/ASTMatchFinder.cpp
M clang/lib/Analysis/CFG.cpp
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/FlowSensitive/SmartPointerAccessorCaching.cpp
M clang/lib/Analysis/ThreadSafety.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Basic/Attributes.cpp
M clang/lib/Basic/Builtins.cpp
M clang/lib/Basic/FileManager.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/BPF.cpp
M clang/lib/Basic/Targets/Mips.cpp
M clang/lib/Basic/Targets/OSTargets.cpp
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/SPIR.h
M clang/lib/CIR/CMakeLists.txt
A clang/lib/CIR/CodeGen/Address.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
A clang/lib/CIR/CodeGen/CIRGenCall.h
A clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
A clang/lib/CIR/CodeGen/CIRGenDecl.cpp
A clang/lib/CIR/CodeGen/CIRGenExpr.cpp
A clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
A clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/lib/CIR/CodeGen/CIRGenerator.cpp
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/Dialect/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
A clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/IR/CMakeLists.txt
A clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
A clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
A clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
A clang/lib/CIR/Dialect/Transforms/PassDetail.h
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CIR/FrontendAction/CMakeLists.txt
A clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
A clang/lib/CIR/Interfaces/CIROpInterfaces.cpp
M clang/lib/CIR/Interfaces/CMakeLists.txt
A clang/lib/CIR/Lowering/CIRPasses.cpp
M clang/lib/CIR/Lowering/CMakeLists.txt
M clang/lib/CIR/Lowering/DirectToLLVM/CMakeLists.txt
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
A clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVMIR.cpp
M clang/lib/CodeGen/ABIInfoImpl.cpp
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
A clang/lib/CodeGen/CGBuiltin.h
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGCoroutine.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.h
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CGVTables.h
M clang/lib/CodeGen/CMakeLists.txt
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/ModuleBuilder.cpp
M clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
A clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
A clang/lib/CodeGen/TargetBuiltins/ARM.cpp
A clang/lib/CodeGen/TargetBuiltins/Hexagon.cpp
A clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
A clang/lib/CodeGen/TargetBuiltins/PPC.cpp
A clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
A clang/lib/CodeGen/TargetBuiltins/SPIR.cpp
A clang/lib/CodeGen/TargetBuiltins/SystemZ.cpp
A clang/lib/CodeGen/TargetBuiltins/WebAssembly.cpp
A clang/lib/CodeGen/TargetBuiltins/X86.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/CodeGen/Targets/AVR.cpp
M clang/lib/CodeGen/Targets/DirectX.cpp
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/CodeGen/Targets/TCE.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/CodeGen/VarBypassDetector.cpp
M clang/lib/CodeGen/VarBypassDetector.h
M clang/lib/Driver/Action.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/Multilib.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/AMDGPU.h
M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
M clang/lib/Driver/ToolChains/Arch/AArch64.h
M clang/lib/Driver/ToolChains/Arch/ARM.cpp
M clang/lib/Driver/ToolChains/Arch/Mips.cpp
M clang/lib/Driver/ToolChains/Arch/PPC.cpp
M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/HIPUtility.cpp
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Driver/ToolChains/HLSL.h
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/Haiku.h
M clang/lib/Driver/ToolChains/Hexagon.cpp
M clang/lib/Driver/ToolChains/OHOS.cpp
M clang/lib/Driver/ToolChains/SPIRV.cpp
M clang/lib/Driver/ToolChains/SPIRV.h
M clang/lib/Driver/ToolChains/SYCL.cpp
M clang/lib/Driver/ToolChains/WebAssembly.cpp
M clang/lib/Driver/Types.cpp
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Frontend/PrecompiledPreamble.cpp
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/__clang_hip_libdevice_declares.h
M clang/lib/Headers/__clang_hip_math.h
M clang/lib/Headers/__clang_hip_runtime_wrapper.h
M clang/lib/Headers/__stdarg_va_arg.h
M clang/lib/Headers/amdgpuintrin.h
M clang/lib/Headers/avx10_2_512convertintrin.h
M clang/lib/Headers/avx10_2_512satcvtdsintrin.h
M clang/lib/Headers/avx10_2_512satcvtintrin.h
M clang/lib/Headers/avx10_2convertintrin.h
M clang/lib/Headers/avx10_2minmaxintrin.h
M clang/lib/Headers/avx10_2niintrin.h
M clang/lib/Headers/avx10_2satcvtdsintrin.h
M clang/lib/Headers/avx10_2satcvtintrin.h
M clang/lib/Headers/gpuintrin.h
M clang/lib/Headers/hlsl.h
A clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
A clang/lib/Headers/hlsl/hlsl_compat_overloads.h
M clang/lib/Headers/hlsl/hlsl_detail.h
A clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/nvptxintrin.h
M clang/lib/Headers/opencl-c.h
M clang/lib/Headers/vecintrin.h
M clang/lib/Interpreter/IncrementalParser.cpp
M clang/lib/Interpreter/Wasm.cpp
M clang/lib/Lex/CMakeLists.txt
M clang/lib/Lex/HeaderMap.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/Lexer.cpp
M clang/lib/Lex/LiteralSupport.cpp
M clang/lib/Lex/ModuleMap.cpp
A clang/lib/Lex/ModuleMapFile.cpp
M clang/lib/Lex/PPExpressions.cpp
M clang/lib/Lex/PPMacroExpansion.cpp
M clang/lib/Lex/Pragma.cpp
M clang/lib/Parse/ParseCXXInlineMethods.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseHLSL.cpp
M clang/lib/Parse/ParseInit.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/ParseStmtAsm.cpp
M clang/lib/Parse/ParseTemplate.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/CMakeLists.txt
A clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
A clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/HeuristicResolver.cpp
M clang/lib/Sema/ParsedAttr.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaBase.cpp
M clang/lib/Sema/SemaCUDA.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaRISCV.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaStmtAsm.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/SemaX86.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTCommon.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderInternals.h
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/Serialization/CMakeLists.txt
M clang/lib/Serialization/GeneratePCH.cpp
M clang/lib/Serialization/GlobalModuleIndex.cpp
A clang/lib/Serialization/ModuleCache.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/Serialization/MultiOnDiskHashTable.h
M clang/lib/Serialization/TemplateArgumentHasher.cpp
M clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp
A clang/lib/StaticAnalyzer/Checkers/AssumeModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
M clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MismatchedIteratorChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/ReturnValueChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
A clang/lib/StaticAnalyzer/Checkers/WebKit/ForwardDeclChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
A clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLambdaCapturesChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
A clang/lib/StaticAnalyzer/Checkers/WebKit/RetainPtrCtorAdoptChecker.cpp
R clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLambdaCapturesChecker.cpp
M clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
M clang/lib/StaticAnalyzer/Core/CMakeLists.txt
M clang/lib/StaticAnalyzer/Core/Checker.cpp
M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
A clang/lib/StaticAnalyzer/Core/EntryPointStats.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/WorkList.cpp
M clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
M clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
M clang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp
M clang/lib/StaticAnalyzer/Frontend/CreateCheckerManager.cpp
M clang/lib/Testing/CMakeLists.txt
M clang/lib/Tooling/DependencyScanning/CMakeLists.txt
M clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
A clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
M clang/lib/Tooling/RefactoringCallbacks.cpp
M clang/test/AST/ByteCode/builtin-constant-p.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/ByteCode/c.c
M clang/test/AST/ByteCode/cxx20.cpp
M clang/test/AST/ByteCode/floats.cpp
M clang/test/AST/ByteCode/functions.cpp
M clang/test/AST/ByteCode/if.cpp
A clang/test/AST/ByteCode/libcxx/deref-to-array.cpp
A clang/test/AST/ByteCode/libcxx/make_unique.cpp
A clang/test/AST/ByteCode/libcxx/memcmp-pointer.cpp
M clang/test/AST/ByteCode/literals.cpp
M clang/test/AST/ByteCode/memberpointers.cpp
M clang/test/AST/ByteCode/new-delete.cpp
M clang/test/AST/ByteCode/placement-new.cpp
M clang/test/AST/ByteCode/records.cpp
M clang/test/AST/ByteCode/references.cpp
M clang/test/AST/ByteCode/unions.cpp
M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
M clang/test/AST/HLSL/HLSLControlFlowHint.hlsl
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
M clang/test/AST/HLSL/ast-dump-comment-cbuffer.hlsl
M clang/test/AST/HLSL/cbuffer.hlsl
M clang/test/AST/HLSL/cbuffer_and_namespaces.hlsl
A clang/test/AST/HLSL/default_cbuffer.hlsl
M clang/test/AST/HLSL/is_structured_resource_element_compatible_concept.hlsl
M clang/test/AST/HLSL/is_typed_resource_element_compatible_concept.hlsl
M clang/test/AST/HLSL/packoffset.hlsl
M clang/test/AST/HLSL/pch_hlsl_buffer.hlsl
M clang/test/AST/HLSL/resource_binding_attr.hlsl
M clang/test/AST/HLSL/vector-alias.hlsl
M clang/test/AST/HLSL/vector-constructors.hlsl
A clang/test/AST/ast-dump-atomic-options.hip
M clang/test/AST/ast-dump-cxx2b-deducing-this.cpp
M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
M clang/test/AST/ast-dump-templates.cpp
M clang/test/AST/ast-dump-types-json.cpp
A clang/test/AST/ast-print-openacc-cache-construct.cpp
A clang/test/AST/ast-print-openacc-declare-construct.cpp
A clang/test/AST/ast-print-openacc-routine-construct.cpp
M clang/test/AST/attr-print-emit.cpp
A clang/test/AST/cc-modifier.cpp
A clang/test/Analysis/ArrayBound/assumption-reporting.c
A clang/test/Analysis/ArrayBound/assumptions.c
A clang/test/Analysis/ArrayBound/brief-tests.c
A clang/test/Analysis/ArrayBound/cplusplus.cpp
A clang/test/Analysis/ArrayBound/verbose-tests.c
A clang/test/Analysis/Checkers/WebKit/binding-to-refptr.cpp
M clang/test/Analysis/Checkers/WebKit/call-args.cpp
A clang/test/Analysis/Checkers/WebKit/forward-decl-checker.mm
M clang/test/Analysis/Checkers/WebKit/mock-system-header.h
M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
A clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use-arc.mm
A clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use.mm
M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures-decl-protects-this-crash.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-members.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.mm
A clang/test/Analysis/Checkers/WebKit/unretained-call-args-arc.mm
A clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
A clang/test/Analysis/Checkers/WebKit/unretained-lambda-captures-arc.mm
A clang/test/Analysis/Checkers/WebKit/unretained-lambda-captures.mm
A clang/test/Analysis/Checkers/WebKit/unretained-members-arc.mm
A clang/test/Analysis/Checkers/WebKit/unretained-members.mm
M clang/test/Analysis/Inputs/expected-plists/edges-new.mm.plist
M clang/test/Analysis/Inputs/expected-plists/plist-output.m.plist
M clang/test/Analysis/Inputs/system-header-simulator-cxx.h
M clang/test/Analysis/a_flaky_crash.cpp
M clang/test/Analysis/analysis-after-multiple-dtors.cpp
M clang/test/Analysis/analyzer-config.c
M clang/test/Analysis/analyzer-enabled-checkers.c
A clang/test/Analysis/analyzer-stats/entry-point-stats.cpp
M clang/test/Analysis/array-init-loop.cpp
M clang/test/Analysis/array-punned-region.c
A clang/test/Analysis/builtin_assume.cpp
M clang/test/Analysis/builtin_overflow_notes.c
M clang/test/Analysis/call-invalidation.cpp
M clang/test/Analysis/cast-value-notes.cpp
M clang/test/Analysis/concrete-address.c
A clang/test/Analysis/csv2json.py
M clang/test/Analysis/ctor-array.cpp
M clang/test/Analysis/ctor.mm
M clang/test/Analysis/cxx-uninitialized-object-ptr-ref.cpp
A clang/test/Analysis/cxx23-assume-attribute.cpp
M clang/test/Analysis/diagnostics/no-store-func-path-notes.m
A clang/test/Analysis/fixed-address-notes.c
M clang/test/Analysis/fread.c
M clang/test/Analysis/implicit-ctor-undef-value.cpp
M clang/test/Analysis/initialization.c
M clang/test/Analysis/initialization.cpp
M clang/test/Analysis/initializer.cpp
M clang/test/Analysis/invalidated-iterator.cpp
M clang/test/Analysis/kmalloc-linux.c
M clang/test/Analysis/malloc-annotations.c
M clang/test/Analysis/malloc.c
M clang/test/Analysis/misc-ps.c
M clang/test/Analysis/misc-ps.m
M clang/test/Analysis/mismatched-iterator.cpp
A clang/test/Analysis/new-user-defined.cpp
M clang/test/Analysis/operator-calls.cpp
R clang/test/Analysis/out-of-bounds-constraint-check.c
R clang/test/Analysis/out-of-bounds-diagnostics.c
R clang/test/Analysis/out-of-bounds-new.cpp
R clang/test/Analysis/out-of-bounds-notes.c
R clang/test/Analysis/out-of-bounds.c
R clang/test/Analysis/outofbound-notwork.c
R clang/test/Analysis/outofbound.c
M clang/test/Analysis/region-store.cpp
M clang/test/Analysis/stack-addr-ps.cpp
M clang/test/Analysis/std-c-library-functions-POSIX.c
M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
A clang/test/Analysis/suppress-dereferences-from-any-address-space.c
M clang/test/Analysis/undef-buffers.c
M clang/test/Analysis/uninit-const.c
M clang/test/Analysis/uninit-const.cpp
M clang/test/Analysis/uninit-structured-binding-array.cpp
M clang/test/Analysis/uninit-structured-binding-struct.cpp
M clang/test/Analysis/uninit-structured-binding-tuple.cpp
M clang/test/Analysis/uninit-vals.m
M clang/test/Analysis/virtualcall.cpp
M clang/test/Analysis/zero-size-non-pod-array.cpp
M clang/test/C/C23/n2819.c
M clang/test/C/C23/n2975.c
A clang/test/C/C2y/n3347.c
A clang/test/C/C2y/n3353.c
A clang/test/C/C2y/n3363.c
A clang/test/C/C2y/n3409.c
A clang/test/C/C2y/n3410.c
A clang/test/C/C2y/n3411.c
A clang/test/C/C2y/n3451.c
A clang/test/C/C2y/n3460.c
A clang/test/C/C2y/n3460_1.c
A clang/test/C/C2y/n3478.c
A clang/test/C/C2y/n3481.c
A clang/test/C/C2y/n3482.c
A clang/test/C/C2y/n3496.c
A clang/test/C/C2y/n3505.c
A clang/test/CIR/CodeGen/array.cpp
A clang/test/CIR/CodeGen/basic.c
A clang/test/CIR/CodeGen/basic.cpp
A clang/test/CIR/CodeGen/cast.cpp
A clang/test/CIR/CodeGen/local-vars.cpp
A clang/test/CIR/CodeGen/loop.cpp
A clang/test/CIR/CodeGen/unary-expr-or-type-trait.cpp
A clang/test/CIR/CodeGen/unary.cpp
A clang/test/CIR/IR/array.cir
A clang/test/CIR/IR/cast.cir
M clang/test/CIR/IR/func.cir
A clang/test/CIR/IR/global-var-linkage.cir
M clang/test/CIR/IR/global.cir
A clang/test/CIR/Lowering/array.cpp
A clang/test/CIR/Lowering/basic.cpp
A clang/test/CIR/Lowering/cast.cir
A clang/test/CIR/Lowering/func-simple.cpp
M clang/test/CIR/Lowering/global-var-simple.cpp
A clang/test/CIR/Lowering/local-vars.cpp
A clang/test/CIR/Lowering/unary-expr-or-type-trait.cpp
A clang/test/CIR/Tools/cir-translate-triple.cir
A clang/test/CIR/Tools/has-triple-and-data-layout.cir
A clang/test/CIR/Tools/has-triple-no-data-layout.cir
A clang/test/CIR/Tools/invalid-translate-triple.cir
A clang/test/CIR/Tools/no-triple-has-data-layout.cir
A clang/test/CIR/Tools/no-triple-no-data-layout.cir
A clang/test/CIR/Tools/warn-default-triple.cir
A clang/test/CIR/Transforms/canonicalize.cir
A clang/test/CIR/Transforms/loop.cir
A clang/test/CIR/Transforms/scope.cir
M clang/test/CIR/func-simple.cpp
A clang/test/CIR/global-var-linkage.cpp
M clang/test/CIR/global-var-simple.cpp
A clang/test/CIR/mlirargs.c
A clang/test/CIR/mlprint.c
M clang/test/CMakeLists.txt
M clang/test/CXX/basic/basic.lookup/basic.lookup.qual/class.qual/p2.cpp
M clang/test/CXX/class.access/class.access.dcl/p1.cpp
M clang/test/CXX/class.access/class.friend/p3-cxx0x.cpp
M clang/test/CXX/class.access/class.friend/p6.cpp
M clang/test/CXX/class.access/p6.cpp
M clang/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p3.cpp
M clang/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p4.cpp
M clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.deprecated/p1.cpp
M clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.nodiscard/p2.cpp
M clang/test/CXX/dcl.decl/dcl.init/dcl.init.general/p16-cxx20.cpp
M clang/test/CXX/dcl.decl/dcl.meaning/p1-0x.cpp
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg18xx.cpp
M clang/test/CXX/drs/cwg19xx.cpp
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg22xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg28xx.cpp
M clang/test/CXX/drs/cwg29xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg3xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/drs/cwg6xx.cpp
A clang/test/CXX/drs/cwg787.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/special/class.inhctor/elsewhere.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p5.cpp
M clang/test/CXX/temp/temp.pre/p6.cpp
M clang/test/CXX/temp/temp.res/temp.dep/p3.cpp
M clang/test/CXX/temp/temp.res/temp.local/p6.cpp
M clang/test/ClangScanDeps/modules-context-hash-cwd.c
A clang/test/ClangScanDeps/modules-debug-dir.c
A clang/test/ClangScanDeps/modules-in-stable-dirs.c
A clang/test/ClangScanDeps/prebuilt-modules-in-stable-dirs.c
A clang/test/CodeCompletion/GH125500.cpp
A clang/test/CodeCompletion/if-const.cpp
A clang/test/CodeGen/AArch64/fmv-detection.c
M clang/test/CodeGen/AArch64/fmv-mix-explicit-implicit-default.c
M clang/test/CodeGen/AArch64/fmv-resolver-emission.c
A clang/test/CodeGen/AArch64/fp8-init-list.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fdot.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fmla.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnt1.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st1.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_stnt1.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef4.c
M clang/test/CodeGen/AArch64/sve-vector-bits-codegen.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_loads.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/AMDGPU/amdgpu-atomic-float.c
M clang/test/CodeGen/PowerPC/builtins-ppc-p9vector.c
A clang/test/CodeGen/RISCV/pr129995.cc
M clang/test/CodeGen/RISCV/riscv-func-attr-target.c
M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.c
M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.cpp
M clang/test/CodeGen/RISCV/riscv-vector-callingconv.c
M clang/test/CodeGen/RISCV/riscv-vector-callingconv.cpp
M clang/test/CodeGen/X86/avx10_2_512convert-builtins.c
M clang/test/CodeGen/X86/avx10_2_512minmax-error.c
R clang/test/CodeGen/X86/avx10_2_512satcvt-builtins-error.c
M clang/test/CodeGen/X86/avx10_2_512satcvt-builtins.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins.c
M clang/test/CodeGen/X86/avx10_2convert-builtins.c
M clang/test/CodeGen/X86/avx10_2minmax-builtins.c
M clang/test/CodeGen/X86/avx10_2ni-builtins.c
M clang/test/CodeGen/X86/avx10_2satcvt-builtins.c
R clang/test/CodeGen/X86/avx10_2satcvtds-builtins-errors.c
M clang/test/CodeGen/X86/avx10_2satcvtds-builtins-x64.c
M clang/test/CodeGen/X86/avx10_2satcvtds-builtins.c
M clang/test/CodeGen/X86/math-builtins.c
A clang/test/CodeGen/aarch64-execute-only.c
M clang/test/CodeGen/aix-builtin-mapping.c
M clang/test/CodeGen/allow-ubsan-check.c
M clang/test/CodeGen/amdgpu-address-spaces.cpp
M clang/test/CodeGen/arm-mfp8.c
M clang/test/CodeGen/arm-mve-intrinsics/admin.c
A clang/test/CodeGen/arm-neon-endianness.c
M clang/test/CodeGen/asm.c
M clang/test/CodeGen/assignment-tracking/assignment-tracking.cpp
M clang/test/CodeGen/assignment-tracking/memcpy-fragment.cpp
M clang/test/CodeGen/attr-counted-by.c
A clang/test/CodeGen/attr-malloc.c
M clang/test/CodeGen/attr-target-clones-riscv.c
M clang/test/CodeGen/attr-target-version-riscv.c
R clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGen/avr/argument.c
M clang/test/CodeGen/builtin-attributes.c
M clang/test/CodeGen/builtin-constant-p.c
M clang/test/CodeGen/builtins-elementwise-math.c
A clang/test/CodeGen/cx-complex-range-real.c
M clang/test/CodeGen/cx-complex-range.c
A clang/test/CodeGen/excess-embed-data.c
M clang/test/CodeGen/fake-use-determinism.c
M clang/test/CodeGen/fat-lto-objects-cfi.cpp
M clang/test/CodeGen/math-builtins-long.c
M clang/test/CodeGen/math-libcalls.c
A clang/test/CodeGen/openacc-noop-decl.c
A clang/test/CodeGen/p0963r3.cpp
M clang/test/CodeGen/partial-reinitialization2.c
A clang/test/CodeGen/strictfp-elementwise-builtins.cpp
R clang/test/CodeGen/strictfp-elementwise-bulitins.cpp
M clang/test/CodeGen/varargs.c
M clang/test/CodeGen/vector.c
A clang/test/CodeGen/win-fp128.c
M clang/test/CodeGenCUDA/amdgpu-atomic-ops.cu
M clang/test/CodeGenCUDA/amdgpu-bf16.cu
M clang/test/CodeGenCUDA/amdgpu-code-object-version.cu
M clang/test/CodeGenCUDA/atomic-ops.cu
A clang/test/CodeGenCUDA/atomic-options.hip
M clang/test/CodeGenCUDA/launch-bounds.cu
M clang/test/CodeGenCUDASPIRV/spirv-attrs.cu
M clang/test/CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp
M clang/test/CodeGenCXX/RelativeVTablesABI/type-info.cpp
M clang/test/CodeGenCXX/attr-target-clones-riscv.cpp
M clang/test/CodeGenCXX/attr-target-version-riscv.cpp
M clang/test/CodeGenCXX/builtin-amdgcn-atomic-inc-dec.cpp
M clang/test/CodeGenCXX/builtin-constant-p.cpp
M clang/test/CodeGenCXX/builtins.cpp
A clang/test/CodeGenCXX/cxx23-p2280r4.cpp
M clang/test/CodeGenCXX/derived-to-base.cpp
M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
M clang/test/CodeGenCXX/function-template-specialization.cpp
A clang/test/CodeGenCXX/gnu-asm-constexpr.cpp
M clang/test/CodeGenCXX/mangle.cpp
A clang/test/CodeGenCXX/sret_cast_with_nonzero_alloca_as.cpp
M clang/test/CodeGenCXX/type-metadata.cpp
M clang/test/CodeGenCXX/wasm-eh.cpp
A clang/test/CodeGenCXX/wasm-em-eh.cpp
M clang/test/CodeGenCoroutines/coro-params.cpp
M clang/test/CodeGenHIP/default-attributes.hip
M clang/test/CodeGenHLSL/BasicFeatures/standard_conversion_sequences.hlsl
A clang/test/CodeGenHLSL/BoolVector.hlsl
M clang/test/CodeGenHLSL/basic_types.hlsl
A clang/test/CodeGenHLSL/builtins/AddUint64.hlsl
M clang/test/CodeGenHLSL/builtins/ByteAddressBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor-opt.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/abs.hlsl
A clang/test/CodeGenHLSL/builtins/asint16.hlsl
A clang/test/CodeGenHLSL/builtins/asuint16.hlsl
M clang/test/CodeGenHLSL/builtins/clamp.hlsl
M clang/test/CodeGenHLSL/builtins/fmod.hlsl
M clang/test/CodeGenHLSL/builtins/max.hlsl
M clang/test/CodeGenHLSL/builtins/min.hlsl
A clang/test/CodeGenHLSL/builtins/or.hlsl
M clang/test/CodeGenHLSL/builtins/select.hlsl
M clang/test/CodeGenHLSL/cbuffer.hlsl
A clang/test/CodeGenHLSL/cbuffer_align.hlsl
M clang/test/CodeGenHLSL/cbuffer_and_namespaces.hlsl
M clang/test/CodeGenHLSL/cbuffer_with_packoffset.hlsl
M clang/test/CodeGenHLSL/cbuffer_with_static_global_and_function.hlsl
A clang/test/CodeGenHLSL/default_cbuffer.hlsl
A clang/test/CodeGenHLSL/default_cbuffer_with_layout.hlsl
M clang/test/CodeGenHLSL/resource-bindings.hlsl
M clang/test/CodeGenHLSL/semantics/GroupIndex-codegen.hlsl
M clang/test/CodeGenObjC/arc-blocks.m
M clang/test/CodeGenObjC/arc-property.m
M clang/test/CodeGenObjC/arc-weak-property.m
M clang/test/CodeGenObjC/arc.m
M clang/test/CodeGenObjC/arm64-int32-ivar.m
M clang/test/CodeGenObjC/bitfield-ivar-offsets.m
M clang/test/CodeGenObjC/constant-non-fragile-ivar-offset.m
M clang/test/CodeGenObjC/direct-method.m
M clang/test/CodeGenObjC/hidden-visibility.m
M clang/test/CodeGenObjC/interface-layout-64.m
M clang/test/CodeGenObjC/ivar-base-as-invariant-load.m
M clang/test/CodeGenObjC/metadata-symbols-64.m
M clang/test/CodeGenObjC/nontrivial-c-struct-property.m
M clang/test/CodeGenObjC/objc-asm-attribute-test.m
M clang/test/CodeGenObjC/ubsan-bool.m
M clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
A clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel-linking.cl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/as_type.cl
M clang/test/CodeGenOpenCL/atomic-ops.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-dl-insts-gfx11.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-param-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w64.cl
M clang/test/CodeGenOpenCL/kernel-attributes.cl
R clang/test/CoverageMapping/mcdc-error-nests.cpp
A clang/test/CoverageMapping/mcdc-nested-expr.cpp
M clang/test/CoverageMapping/terminate-statements.cpp
A clang/test/Driver/HLSL/metal-converter.hlsl
A clang/test/Driver/Inputs/ohos_native_tree/llvm/lib/clang/x.y.z/lib/loongarch64-linux-ohos/.keep
A clang/test/Driver/Inputs/ohos_native_tree/llvm/lib/clang/x.y.z/lib/loongarch64-linux-ohos/clang_rt.crtbegin.o
A clang/test/Driver/Inputs/ohos_native_tree/llvm/lib/clang/x.y.z/lib/loongarch64-linux-ohos/clang_rt.crtend.o
A clang/test/Driver/Inputs/ohos_native_tree/llvm/lib/clang/x.y.z/lib/loongarch64-linux-ohos/libclang_rt.builtins.a
A clang/test/Driver/Inputs/ohos_native_tree/sysroot/usr/include/loongarch64-linux-ohos/.keep
A clang/test/Driver/Inputs/ohos_native_tree/sysroot/usr/lib/loongarch64-linux-ohos/.keep
A clang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_abi_version_600.bc
A clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_abi_version_600.bc
A clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_abi_version_600.bc
A clang/test/Driver/aarch64-execute-only.c
A clang/test/Driver/aarch64-nvidia-olympus.c
A clang/test/Driver/aix-shared-lib-tls-model-opt.c
M clang/test/Driver/aix-small-local-exec-dynamic-tls.c
M clang/test/Driver/amdgpu-toolchain.c
M clang/test/Driver/apple-arm64-arch.c
M clang/test/Driver/arm-thread-pointer.c
A clang/test/Driver/atomic-options.hip
M clang/test/Driver/clang-offload-bundler-asserts-on.c
M clang/test/Driver/clang-offload-bundler-standardize.c
M clang/test/Driver/clang-offload-bundler.c
M clang/test/Driver/clang_f_opts.c
M clang/test/Driver/compilation_database_multiarch.c
R clang/test/Driver/cuda-no-pgo-or-coverage.cu
M clang/test/Driver/darwin-ld-platform-version-macos-requires-darwin.c
M clang/test/Driver/dxc_dxv_path.hlsl
M clang/test/Driver/fmemprof.cpp
M clang/test/Driver/fprofile-continuous.c
M clang/test/Driver/fsanitize.c
M clang/test/Driver/hexagon-toolchain-elf.c
M clang/test/Driver/hexagon-toolchain-linux.c
M clang/test/Driver/hip-code-object-version.hip
M clang/test/Driver/hip-cuid-hash.hip
M clang/test/Driver/hip-device-libs.hip
M clang/test/Driver/hip-gz-options.hip
M clang/test/Driver/hip-link-bc-to-bc.hip
M clang/test/Driver/hip-link-bundle-archive.hip
M clang/test/Driver/hip-offload-compress-zlib.hip
M clang/test/Driver/hip-offload-compress-zstd.hip
M clang/test/Driver/hip-options.hip
M clang/test/Driver/hip-partial-link.hip
M clang/test/Driver/hip-rdc-device-only.hip
A clang/test/Driver/hip-toolchain-rdc-flto-partitions.hip
M clang/test/Driver/hip-toolchain-rdc-separate.hip
M clang/test/Driver/hip-toolchain-rdc-static-lib.hip
M clang/test/Driver/hip-toolchain-rdc.hip
M clang/test/Driver/linker-wrapper.c
M clang/test/Driver/mips-abi.c
M clang/test/Driver/module-fgen-reduced-bmi.cppm
M clang/test/Driver/mtargetos-darwin.c
M clang/test/Driver/offload-Xarch.c
M clang/test/Driver/ohos.c
A clang/test/Driver/opencl-aot-compilation.cl
M clang/test/Driver/openmp-offload.c
A clang/test/Driver/print-enabled-extensions/aarch64-olympus.c
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Driver/riscv-features.c
M clang/test/Driver/sanitizer-ld.c
M clang/test/Driver/sparc-ias-Wa.s
M clang/test/Driver/spirv-openmp-toolchain.c
M clang/test/Driver/spirv-toolchain.cl
M clang/test/Driver/wasm-toolchain.c
M clang/test/Driver/xros-driver-requires-darwin-host.c
A clang/test/Frontend/verify-mulptiple-prefixes.c
M clang/test/Frontend/verify.c
M clang/test/Frontend/verify3.c
M clang/test/Headers/__clang_hip_math.hip
M clang/test/Headers/gpuintrin.c
M clang/test/Index/pch-from-libclang.c
M clang/test/Index/print-type.cpp
M clang/test/Lexer/cxx-features.cpp
M clang/test/Lexer/ms-extensions.c
R clang/test/Lexer/newline-eof-c++98-compat.cpp
M clang/test/Lexer/newline-eof.c
M clang/test/Misc/diag-template-diffing-cxx11.cpp
M clang/test/Misc/target-invalid-cpu-note/aarch64.c
M clang/test/Misc/time-passes.c
M clang/test/Misc/warning-flags.c
M clang/test/Modules/Inputs/export_as_test.modulemap
A clang/test/Modules/MixedModulePrecompile.cpp
A clang/test/Modules/clang-pragmas.c
A clang/test/Modules/diag-undefined-template.cpp
M clang/test/Modules/diagnostics.modulemap
M clang/test/Modules/eagerly-load-cxx-named-modules.cppm
M clang/test/Modules/export_as_test.c
A clang/test/Modules/external-but-not-type-external.cppm
A clang/test/Modules/lambda-in-module-purview-2.cppm
A clang/test/Modules/lambda-in-module-purview.cppm
A clang/test/Modules/modules-merge-enum.m
A clang/test/Modules/no-transitive-source-location-change-2.cppm
A clang/test/Modules/pr121245.cpp
A clang/test/Modules/pr125999.cppm
A clang/test/Modules/pr129982.cpp
A clang/test/Modules/pr28744.cpp
A clang/test/Modules/transitive-system.test
A clang/test/Modules/try-func-body.cppm
A clang/test/OpenMP/amdgcn_sret_ctor.cpp
M clang/test/OpenMP/amdgcn_target_global_constructor.cpp
M clang/test/OpenMP/amdgpu-unsafe-fp-atomics.cpp
M clang/test/OpenMP/cancel_codegen.cpp
M clang/test/OpenMP/for_reduction_messages.cpp
M clang/test/OpenMP/for_simd_reduction_messages.cpp
M clang/test/OpenMP/irbuilder_nested_openmp_parallel_empty.c
M clang/test/OpenMP/irbuilder_nested_parallel_for.c
M clang/test/OpenMP/metadirective_ast_print.c
A clang/test/OpenMP/metadirective_otherwise.cpp
M clang/test/OpenMP/nested_loop_codegen.cpp
M clang/test/OpenMP/ompx_attributes_codegen.cpp
M clang/test/OpenMP/parallel_codegen.cpp
M clang/test/OpenMP/parallel_for_reduction_messages.cpp
M clang/test/OpenMP/requires_ast_print.cpp
M clang/test/OpenMP/requires_messages.cpp
M clang/test/OpenMP/sections_reduction_messages.cpp
M clang/test/OpenMP/target_data_ast_print.cpp
M clang/test/OpenMP/target_map_messages.cpp
M clang/test/OpenMP/taskgroup_codegen.cpp
M clang/test/OpenMP/thread_limit_nvptx.c
A clang/test/Parser/Inputs/cuda.h
M clang/test/Parser/asm.cpp
A clang/test/Parser/atomic-options.hip
M clang/test/Parser/cxx-attributes.cpp
M clang/test/Parser/cxx-template-decl.cpp
M clang/test/Parser/cxx1z-decomposition.cpp
M clang/test/Parser/cxx2c-variadic-friends.cpp
M clang/test/Parser/decomposed-condition.cpp
M clang/test/Parser/parser_overflow.c
M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl
M clang/test/ParserOpenACC/parse-cache-construct.c
M clang/test/ParserOpenACC/parse-cache-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-clauses.cpp
M clang/test/ParserOpenACC/parse-constructs.c
M clang/test/ParserOpenACC/parse-constructs.cpp
M clang/test/Preprocessor/bpf-predefined-macros.c
A clang/test/Preprocessor/embed_constexpr.c
M clang/test/Preprocessor/ohos.c
M clang/test/Preprocessor/riscv-target-features.c
A clang/test/Preprocessor/warn-macro-undef-true.c
A clang/test/Sema/GH126231.cpp
M clang/test/Sema/aarch64-special-register.c
M clang/test/Sema/aarch64-sve-vector-exp-ops.c
M clang/test/Sema/aarch64-sve-vector-log-ops.c
M clang/test/Sema/aarch64-sve-vector-pow-ops.c
M clang/test/Sema/aarch64-sve-vector-trig-ops.c
M clang/test/Sema/attr-args.c
M clang/test/Sema/attr-availability-macosx.cpp
M clang/test/Sema/bool-compare.c
M clang/test/Sema/builtins-elementwise-math.c
M clang/test/Sema/builtins-reduction-math.c
A clang/test/Sema/c23-varargs.c
M clang/test/Sema/compare.c
M clang/test/Sema/count-builtins.c
A clang/test/Sema/excess-embed-data.c
M clang/test/Sema/for.c
M clang/test/Sema/format-strings.c
M clang/test/Sema/generic-selection-type-extension.c
M clang/test/Sema/generic-selection.c
A clang/test/Sema/offsetof-ucrt.c
M clang/test/Sema/parentheses.cpp
A clang/test/Sema/riscv-interrupt-attr-qci.c
M clang/test/Sema/riscv-rvv-vector-exp-ops.c
M clang/test/Sema/riscv-rvv-vector-log-ops.c
M clang/test/Sema/riscv-rvv-vector-trig-ops.c
M clang/test/Sema/riscv-sve-vector-pow-ops.c
A clang/test/Sema/shift-bool.c
A clang/test/Sema/shift-bool.cpp
M clang/test/Sema/types.c
M clang/test/Sema/varargs-x86-64.c
M clang/test/Sema/varargs.c
A clang/test/Sema/vector-ast.cpp
M clang/test/Sema/warn-thread-safety-analysis.c
A clang/test/SemaCUDA/dtor.cu
A clang/test/SemaCUDA/spirv-attrs-diag.cu
M clang/test/SemaCUDA/spirv-attrs.cu
M clang/test/SemaCXX/PR62533.cpp
M clang/test/SemaCXX/addr-of-overloaded-function.cpp
M clang/test/SemaCXX/attr-print.cpp
M clang/test/SemaCXX/attr-require-constant-initialization.cpp
M clang/test/SemaCXX/bool-compare.cpp
M clang/test/SemaCXX/builtin-ptrtomember-ambig.cpp
A clang/test/SemaCXX/builtin-structured-binding-size.cpp
M clang/test/SemaCXX/builtins-elementwise-math.cpp
M clang/test/SemaCXX/calling-conv-compat.cpp
M clang/test/SemaCXX/concept-crash-on-diagnostic.cpp
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
M clang/test/SemaCXX/constexpr-builtin-bit-cast.cpp
A clang/test/SemaCXX/constexpr-if.cpp
A clang/test/SemaCXX/copy-ctor-template.cpp
R clang/test/SemaCXX/coroutine-decltype.cpp
A clang/test/SemaCXX/coroutine-unevaluate.cpp
M clang/test/SemaCXX/ctad.cpp
M clang/test/SemaCXX/cxx0x-defaulted-functions.cpp
M clang/test/SemaCXX/cxx0x-nontrivial-union.cpp
M clang/test/SemaCXX/cxx11-user-defined-literals.cpp
M clang/test/SemaCXX/cxx2a-adl-only-template-id.cpp
M clang/test/SemaCXX/cxx2c-constexpr-placement-new.cpp
M clang/test/SemaCXX/cxx2c-enum-compare.cpp
M clang/test/SemaCXX/cxx98-compat.cpp
M clang/test/SemaCXX/decomposed-condition.cpp
M clang/test/SemaCXX/deduced-return-type-cxx14.cpp
A clang/test/SemaCXX/derived-to-base-propagate-qualifiers.cpp
A clang/test/SemaCXX/embed-init-list.cpp
M clang/test/SemaCXX/err_init_conversion_failed.cpp
M clang/test/SemaCXX/generic-selection.cpp
A clang/test/SemaCXX/gnu-asm-constexpr.cpp
M clang/test/SemaCXX/init-priority-attr.cpp
M clang/test/SemaCXX/member-pointer.cpp
A clang/test/SemaCXX/ms-member-pointer.cpp
M clang/test/SemaCXX/ms-property.cpp
A clang/test/SemaCXX/offsetof-ucrt.cpp
M clang/test/SemaCXX/paren-list-agg-init.cpp
M clang/test/SemaCXX/pr25181-crash-on-invalid.cpp
M clang/test/SemaCXX/pr36536.cpp
M clang/test/SemaCXX/source_location.cpp
M clang/test/SemaCXX/sugar-common-types.cpp
M clang/test/SemaCXX/uninitialized.cpp
A clang/test/SemaCXX/union-member-destructor.cpp
M clang/test/SemaCXX/unique_object_duplication.h
A clang/test/SemaCXX/unnecessary-virtual-specifier.cpp
A clang/test/SemaCXX/unused-bindings.cpp
M clang/test/SemaCXX/unused.cpp
M clang/test/SemaCXX/using-decl-templates.cpp
M clang/test/SemaCXX/vararg-non-pod.cpp
M clang/test/SemaCXX/varargs.cpp
M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-in-container-span-construct.cpp
A clang/test/SemaHLSL/BuiltIns/AddUint64-errors.hlsl
R clang/test/SemaHLSL/BuiltIns/and-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/asint16-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/asuint16-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/clamp-errors-16bit.hlsl
M clang/test/SemaHLSL/BuiltIns/clamp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/distance-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/exp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/firstbithigh-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/firstbitlow-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/fmod-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/length-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/logical-operator-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/mad-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/max-errors-16bit.hlsl
A clang/test/SemaHLSL/BuiltIns/min-errors-16bit.hlsl
M clang/test/SemaHLSL/BuiltIns/reflect-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/reversebits-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/round-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/select-errors.hlsl
A clang/test/SemaHLSL/Language/NoVirtual.hlsl
M clang/test/SemaHLSL/Semantics/valid_entry_parameter.hlsl
A clang/test/SemaHLSL/Types/BuiltinVector/BooleanVectorConstantExpr.hlsl
M clang/test/SemaHLSL/WaveBuiltinAvailability.hlsl
M clang/test/SemaHLSL/cb_error.hlsl
M clang/test/SemaObjCXX/message.mm
M clang/test/SemaObjCXX/propert-dot-error.mm
M clang/test/SemaOpenACC/atomic-construct-ast.cpp
A clang/test/SemaOpenACC/cache-construct-ast.cpp
A clang/test/SemaOpenACC/cache-construct.cpp
M clang/test/SemaOpenACC/combined-construct-ast.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
M clang/test/SemaOpenACC/combined-construct-if-ast.cpp
M clang/test/SemaOpenACC/combined-construct-num_workers-ast.cpp
M clang/test/SemaOpenACC/compute-construct-ast.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/compute-construct-intexpr-clause-ast.cpp
M clang/test/SemaOpenACC/data-construct-default-ast.cpp
M clang/test/SemaOpenACC/data-construct-if-ast.cpp
M clang/test/SemaOpenACC/data-construct.cpp
A clang/test/SemaOpenACC/declare-construct-ast.cpp
A clang/test/SemaOpenACC/declare-construct.cpp
M clang/test/SemaOpenACC/init-construct-ast.cpp
M clang/test/SemaOpenACC/loop-ast.cpp
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
A clang/test/SemaOpenACC/routine-construct-ast.cpp
A clang/test/SemaOpenACC/routine-construct-clauses.cpp
A clang/test/SemaOpenACC/routine-construct.cpp
M clang/test/SemaOpenACC/shutdown-construct-ast.cpp
R clang/test/SemaOpenACC/unimplemented-construct.c
M clang/test/SemaOpenCL/invalid-kernel-attrs.cl
M clang/test/SemaSYCL/float128.cpp
M clang/test/SemaTemplate/constructor-template.cpp
M clang/test/SemaTemplate/cwg2398.cpp
M clang/test/SemaTemplate/deduction-guide.cpp
M clang/test/SemaTemplate/friend-template.cpp
M clang/test/SemaTemplate/instantiate-member-pointers.cpp
M clang/test/SemaTemplate/ms-sizeof-missing-typename.cpp
M clang/test/SemaTemplate/nested-template.cpp
M clang/test/SemaTemplate/qualified-id.cpp
M clang/test/SemaTemplate/temp_arg_nontype.cpp
M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
M clang/test/SemaTemplate/template-id-expr.cpp
M clang/test/SemaTemplate/typename-specifier-3.cpp
M clang/test/SemaTemplate/typename-specifier-4.cpp
M clang/test/SemaTemplate/typename-specifier.cpp
M clang/test/SemaTemplate/typo-dependent-name.cpp
M clang/test/SemaTemplate/typo-template-name.cpp
A clang/test/TableGen/HLSLAttribute-errors.td
M clang/test/Tooling/clang-linker-wrapper-spirv-elf.cpp
M clang/test/Tooling/lit.local.cfg
M clang/test/lit.cfg.py
A clang/test/utils/update_cc_test_checks/Inputs/filter_out_after.c
A clang/test/utils/update_cc_test_checks/Inputs/filter_out_after.c.expected
A clang/test/utils/update_cc_test_checks/filter_out_after.test
M clang/tools/CMakeLists.txt
M clang/tools/amdgpu-arch/AMDGPUArch.cpp
M clang/tools/amdgpu-arch/AMDGPUArchByHIP.cpp
M clang/tools/c-index-test/c-index-test.c
A clang/tools/cir-lsp-server/CMakeLists.txt
A clang/tools/cir-lsp-server/cir-lsp-server.cpp
M clang/tools/cir-opt/CMakeLists.txt
M clang/tools/cir-opt/cir-opt.cpp
A clang/tools/cir-translate/CMakeLists.txt
A clang/tools/cir-translate/cir-translate.cpp
M clang/tools/clang-format/git-clang-format
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/driver/CMakeLists.txt
M clang/tools/driver/cc1_main.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CIndexCXX.cpp
M clang/tools/libclang/CXCursor.cpp
M clang/tools/libclang/CXType.cpp
M clang/tools/libclang/Indexing.cpp
M clang/tools/libclang/libclang.map
M clang/tools/scan-build/libexec/ccc-analyzer
M clang/unittests/AST/ByteCode/toAPValue.cpp
M clang/unittests/AST/DeclPrinterTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
M clang/unittests/Analysis/FlowSensitive/SmartPointerAccessorCachingTest.cpp
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
M clang/unittests/Basic/SourceManagerTest.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/SortIncludesTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Frontend/CMakeLists.txt
M clang/unittests/Frontend/FrontendActionTest.cpp
A clang/unittests/Frontend/NoAlterCodeGenActionTest.cpp
M clang/unittests/Interpreter/InterpreterExtensionsTest.cpp
M clang/unittests/Lex/HeaderSearchTest.cpp
M clang/unittests/Lex/LexerTest.cpp
M clang/unittests/Lex/ModuleDeclStateTest.cpp
M clang/unittests/Lex/PPCallbacksTest.cpp
M clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp
M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
M clang/unittests/Lex/PPMemoryAllocationsTest.cpp
M clang/unittests/Sema/HeuristicResolverTest.cpp
M clang/unittests/StaticAnalyzer/AnalyzerOptionsTest.cpp
M clang/unittests/StaticAnalyzer/ExprEngineVisitTest.cpp
M clang/utils/TableGen/CMakeLists.txt
M clang/utils/TableGen/ClangAttrEmitter.cpp
A clang/utils/TableGen/ClangBuiltinTemplatesEmitter.cpp
M clang/utils/TableGen/NeonEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
M clang/utils/perf-training/perf-helper.py
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M clang/www/cxx_status.html
M clang/www/get_involved.html
M clang/www/get_started.html
M clang/www/make_cxx_dr_status
A cmake/Modules/FindLibcCommonUtils.cmake
M cmake/Modules/FindPrefixFromConfig.cmake
M compiler-rt/include/orc_rt/c_api.h
M compiler-rt/include/profile/InstrProfData.inc
M compiler-rt/include/profile/instr_prof_interface.h
M compiler-rt/lib/asan/asan_internal.h
M compiler-rt/lib/asan/asan_linux.cpp
M compiler-rt/lib/asan/asan_mac.cpp
M compiler-rt/lib/asan/asan_shadow_setup.cpp
M compiler-rt/lib/asan/asan_win.cpp
M compiler-rt/lib/ctx_profile/CtxInstrContextNode.h
M compiler-rt/lib/ctx_profile/CtxInstrProfiling.cpp
M compiler-rt/lib/ctx_profile/CtxInstrProfiling.h
M compiler-rt/lib/ctx_profile/tests/CtxInstrProfilingTest.cpp
M compiler-rt/lib/hwasan/hwasan_globals.cpp
M compiler-rt/lib/interception/interception_win.cpp
M compiler-rt/lib/interception/tests/interception_win_test.cpp
M compiler-rt/lib/orc/CMakeLists.txt
M compiler-rt/lib/orc/coff_platform.cpp
M compiler-rt/lib/orc/common.h
M compiler-rt/lib/orc/dlfcn_wrapper.cpp
M compiler-rt/lib/orc/elfnix_platform.cpp
M compiler-rt/lib/orc/error.h
R compiler-rt/lib/orc/extensible_rtti.cpp
R compiler-rt/lib/orc/extensible_rtti.h
M compiler-rt/lib/orc/macho_platform.cpp
A compiler-rt/lib/orc/rtti.cpp
A compiler-rt/lib/orc/rtti.h
M compiler-rt/lib/orc/run_program_wrapper.cpp
M compiler-rt/lib/orc/tests/unit/CMakeLists.txt
M compiler-rt/lib/orc/tests/unit/c_api_test.cpp
M compiler-rt/lib/orc/tests/unit/error_test.cpp
R compiler-rt/lib/orc/tests/unit/extensible_rtti_test.cpp
A compiler-rt/lib/orc/tests/unit/rtti_test.cpp
A compiler-rt/lib/orc/tests/unit/unique_function_test.cpp
M compiler-rt/lib/orc/tests/unit/wrapper_function_utils_test.cpp
A compiler-rt/lib/orc/unique_function.h
M compiler-rt/lib/orc/wrapper_function_utils.h
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/profile/InstrProfilingBuffer.c
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/profile/InstrProfilingInternal.h
M compiler-rt/lib/profile/InstrProfilingPlatformAIX.c
M compiler-rt/lib/profile/InstrProfilingPlatformDarwin.c
M compiler-rt/lib/profile/InstrProfilingPlatformLinux.c
M compiler-rt/lib/profile/InstrProfilingPlatformOther.c
M compiler-rt/lib/profile/InstrProfilingPlatformWindows.c
M compiler-rt/lib/profile/InstrProfilingUtil.c
M compiler-rt/lib/profile/InstrProfilingUtil.h
M compiler-rt/lib/profile/InstrProfilingWriter.c
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_syscalls.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cpp
M compiler-rt/lib/sanitizer_common/tests/sanitizer_procmaps_mac_test.cpp
M compiler-rt/lib/tsan/go/buildgo.sh
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
M compiler-rt/lib/tsan/rtl/tsan_platform.h
M compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
M compiler-rt/test/asan/TestCases/Darwin/suppressions-sandbox.cpp
M compiler-rt/test/asan/lit.cfg.py
M compiler-rt/test/ctx_profile/TestCases/generate-context.cpp
M compiler-rt/test/profile/ContinuousSyncMode/basic.c
M compiler-rt/test/profile/ContinuousSyncMode/get-filename.c
M compiler-rt/test/profile/ContinuousSyncMode/image-with-mcdc.c
M compiler-rt/test/profile/ContinuousSyncMode/image-with-no-counters.c
M compiler-rt/test/profile/ContinuousSyncMode/multi-threaded.cpp
M compiler-rt/test/profile/ContinuousSyncMode/online-merging-windows.c
M compiler-rt/test/profile/ContinuousSyncMode/online-merging.c
M compiler-rt/test/profile/ContinuousSyncMode/pid-substitution.c
M compiler-rt/test/profile/ContinuousSyncMode/reset-default-profile.c
M compiler-rt/test/profile/ContinuousSyncMode/runtime-counter-relocation.c
M compiler-rt/test/profile/ContinuousSyncMode/set-file-object.c
M compiler-rt/test/profile/ContinuousSyncMode/set-filename.c
R compiler-rt/test/profile/Inputs/instrprof-order-file.c
A compiler-rt/test/profile/Linux/coverage-statement-expression.cpp
M compiler-rt/test/profile/Posix/instrprof-fork.c
M compiler-rt/test/profile/instrprof-darwin-exports.c
A compiler-rt/test/profile/instrprof-no-mmap-during-merging.c
R compiler-rt/test/profile/instrprof-order-file.test
M compiler-rt/test/profile/lit.cfg.py
M compiler-rt/test/sanitizer_common/TestCases/Darwin/malloc_zone.cpp
A compiler-rt/test/sanitizer_common/TestCases/Linux/copy_file_range.c
M compiler-rt/test/tsan/cxa_guard_acquire.cpp
M compiler-rt/test/tysan/lit.cfg.py
M compiler-rt/test/ubsan/TestCases/Float/cast-overflow.cpp
M cross-project-tests/amdgpu/builtins-amdgcn-swmmac-w32.cl
M cross-project-tests/debuginfo-tests/llgdb-tests/llgdb.py
M cross-project-tests/debuginfo-tests/llgdb-tests/test_debuginfo.pl
M cross-project-tests/lit.cfg.py
M flang-rt/CMakeLists.txt
M flang-rt/cmake/modules/AddFlangRT.cmake
M flang-rt/cmake/modules/AddFlangRTOffload.cmake
M flang-rt/cmake/modules/GetToolchainDirs.cmake
A flang-rt/cmake/modules/HandleLibs.cmake
A flang-rt/cmake/quadmath_wrapper.h.in
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/lib/cuda/CMakeLists.txt
M flang-rt/lib/cuda/memory.cpp
M flang-rt/lib/quadmath/CMakeLists.txt
M flang-rt/lib/quadmath/complex-math.h
M flang-rt/lib/quadmath/math-entries.h
M flang-rt/lib/runtime/CMakeLists.txt
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/command.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/exceptions.cpp
M flang-rt/lib/runtime/extensions.cpp
M flang-rt/lib/runtime/pointer.cpp
M flang-rt/lib/runtime/support.cpp
M flang-rt/lib/runtime/transformational.cpp
M flang-rt/lib/runtime/unit.cpp
M flang-rt/lib/runtime/unit.h
M flang-rt/unittests/Runtime/Support.cpp
M flang-rt/unittests/Runtime/Transformational.cpp
M flang/CMakeLists.txt
M flang/cmake/modules/FlangCommon.cmake
A flang/cmake/quadmath_wrapper.h.in
A flang/docs/ArrayRepacking.md
M flang/docs/Extensions.md
M flang/docs/F202X.md
M flang/docs/Intrinsics.md
M flang/docs/OpenMP-descriptor-management.md
M flang/docs/index.md
M flang/examples/FeatureList/FeatureList.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.h
M flang/include/flang/Common/api-attrs.h
M flang/include/flang/Common/erfc-scaled.h
M flang/include/flang/Common/windows-include.h
M flang/include/flang/Evaluate/characteristics.h
M flang/include/flang/Evaluate/common.h
M flang/include/flang/Evaluate/target.h
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Evaluate/traverse.h
M flang/include/flang/Evaluate/variable.h
M flang/include/flang/Frontend/CompilerInstance.h
M flang/include/flang/Frontend/CompilerInvocation.h
M flang/include/flang/Frontend/FrontendActions.h
A flang/include/flang/Frontend/ParserActions.h
M flang/include/flang/Frontend/TargetOptions.h
M flang/include/flang/Lower/BoxAnalyzer.h
M flang/include/flang/Lower/ConvertVariable.h
M flang/include/flang/Lower/Cuda.h
R flang/include/flang/Lower/DumpEvaluateExpr.h
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Optimizer/Builder/CUFCommon.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/HLFIRTools.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
A flang/include/flang/Optimizer/Builder/Runtime/CUDA/Descriptor.h
M flang/include/flang/Optimizer/Builder/Runtime/Command.h
M flang/include/flang/Optimizer/Builder/Runtime/Exceptions.h
M flang/include/flang/Optimizer/Builder/Runtime/Inquiry.h
M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
M flang/include/flang/Optimizer/Builder/Runtime/Transformational.h
M flang/include/flang/Optimizer/Builder/TemporaryStorage.h
M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Optimizer/Dialect/FIRAttr.td
M flang/include/flang/Optimizer/Dialect/FIROps.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Optimizer/Dialect/FIRTypes.td
M flang/include/flang/Optimizer/HLFIR/HLFIRDialect.h
M flang/include/flang/Optimizer/HLFIR/HLFIROpBase.td
M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
M flang/include/flang/Optimizer/Support/InternalNames.h
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Parser/dump-parse-tree.h
A flang/include/flang/Parser/options.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Parser/parsing.h
M flang/include/flang/Parser/preprocessor.h
M flang/include/flang/Runtime/command.h
M flang/include/flang/Runtime/exceptions.h
M flang/include/flang/Runtime/extensions.h
M flang/include/flang/Runtime/pointer.h
M flang/include/flang/Runtime/support.h
M flang/include/flang/Runtime/transformational.h
A flang/include/flang/Semantics/dump-expr.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/symbol.h
M flang/include/flang/Semantics/tools.h
M flang/include/flang/Support/Fortran-features.h
M flang/include/flang/Support/OpenMP-utils.h
M flang/include/flang/Tools/TargetSetup.h
M flang/lib/Evaluate/CMakeLists.txt
M flang/lib/Evaluate/check-expression.cpp
M flang/lib/Evaluate/fold-logical.cpp
M flang/lib/Evaluate/fold.cpp
M flang/lib/Evaluate/host.h
M flang/lib/Evaluate/intrinsics-library.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/shape.cpp
M flang/lib/Evaluate/target.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Evaluate/variable.cpp
M flang/lib/Frontend/CMakeLists.txt
M flang/lib/Frontend/CompilerInstance.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendAction.cpp
M flang/lib/Frontend/FrontendActions.cpp
A flang/lib/Frontend/ParserActions.cpp
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Lower/ConvertConstant.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/ConvertVariable.cpp
R flang/lib/Lower/DumpEvaluateExpr.cpp
M flang/lib/Lower/IterationSpace.cpp
A flang/lib/Lower/OpenMP/ClauseFinder.h
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/PrivateReductionUtils.cpp
M flang/lib/Lower/OpenMP/PrivateReductionUtils.h
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Builder/CMakeLists.txt
M flang/lib/Optimizer/Builder/CUFCommon.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
A flang/lib/Optimizer/Builder/Runtime/CUDA/Descriptor.cpp
M flang/lib/Optimizer/Builder/Runtime/Command.cpp
M flang/lib/Optimizer/Builder/Runtime/Exceptions.cpp
M flang/lib/Optimizer/Builder/Runtime/Inquiry.cpp
M flang/lib/Optimizer/Builder/Runtime/Transformational.cpp
M flang/lib/Optimizer/Builder/TemporaryStorage.cpp
M flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Dialect/FIRAttr.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp
M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
M flang/lib/Optimizer/HLFIR/Transforms/ScheduleOrderedAssignments.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/OpenMP/GenericLoopConversion.cpp
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
M flang/lib/Optimizer/OpenMP/MapsForPrivatizedSymbols.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/CMakeLists.txt
A flang/lib/Optimizer/Transforms/CUFComputeSharedMemoryOffsetsAndSize.cpp
M flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
A flang/lib/Optimizer/Transforms/SimplifyFIROperations.cpp
M flang/lib/Optimizer/Transforms/SimplifyIntrinsics.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/prescan.h
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/CMakeLists.txt
M flang/lib/Semantics/assignment.cpp
M flang/lib/Semantics/check-allocate.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-coarray.cpp
M flang/lib/Semantics/check-coarray.h
M flang/lib/Semantics/check-cuda.cpp
M flang/lib/Semantics/check-deallocate.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-do-forall.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/data-to-inits.cpp
M flang/lib/Semantics/definable.cpp
A flang/lib/Semantics/dump-expr.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/pointer-assignment.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/symbol.cpp
M flang/lib/Semantics/tools.cpp
M flang/lib/Semantics/type.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/lib/Support/Fortran.cpp
M flang/lib/Support/OpenMP-utils.cpp
M flang/module/cudadevice.f90
M flang/module/ieee_arithmetic.f90
M flang/runtime/CMakeLists.txt
M flang/test/Analysis/AliasAnalysis/alias-analysis-3.fir
M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-1.fir
M flang/test/Analysis/AliasAnalysis/load-ptr-designate.fir
M flang/test/Analysis/AliasAnalysis/ptr-component.fir
A flang/test/Analysis/AliasAnalysis/source-kind.fir
M flang/test/CMakeLists.txt
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/config-file.f90
A flang/test/Driver/dash-x-f95-cpp-input.f
A flang/test/Driver/dash-x-f95-do-not-assume-fixed-form.f90
A flang/test/Driver/fd-lines-as.f90
M flang/test/Driver/input-from-stdin/input-from-stdin.f90
M flang/test/Driver/mlir-debug-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
A flang/test/Driver/verbose-asm.f90
M flang/test/Evaluate/folding06.f90
M flang/test/Fir/CUDA/cuda-abstract-result.mlir
M flang/test/Fir/CUDA/cuda-code-gen.mlir
M flang/test/Fir/CUDA/cuda-launch.fir
A flang/test/Fir/CUDA/cuda-shared-offset.mlir
A flang/test/Fir/CUDA/cuda-shared-to-llvm.mlir
M flang/test/Fir/CUDA/cuda-target-rewrite.mlir
M flang/test/Fir/Todo/coordinate_of_2.fir
M flang/test/Fir/Todo/coordinate_of_3.fir
M flang/test/Fir/abstract-results-bindc.fir
M flang/test/Fir/abstract-results.fir
A flang/test/Fir/alloc-32.fir
M flang/test/Fir/alloc.fir
M flang/test/Fir/array-value-copy.fir
M flang/test/Fir/basic-program.fir
A flang/test/Fir/box-total-elements-fold.fir
M flang/test/Fir/boxproc-2.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/convert-to-llvm.fir
A flang/test/Fir/copy-codegen.fir
M flang/test/Fir/cuf.mlir
M flang/test/Fir/dispatch.f90
A flang/test/Fir/do_concurrent.fir
M flang/test/Fir/field-index.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
A flang/test/Fir/is-contiguous-box-fold.fir
A flang/test/Fir/omp-teams.fir
M flang/test/Fir/pdt.fir
M flang/test/Fir/struct-passing-loongarch64-byreg.fir
A flang/test/Fir/struct-passing-powerpc64-aix-byval.fir
A flang/test/Fir/struct-passing-ppc64le-byval.fir
M flang/test/Fir/struct-passing-return-loongarch64-bystack.fir
M flang/test/Fir/struct-passing-x86-64-byval.fir
M flang/test/Fir/struct-passing-x86-64-one-field-inreg.fir
M flang/test/Fir/struct-passing-x86-64-several-fields-inreg.fir
M flang/test/Fir/struct-return-aarch64.fir
M flang/test/Fir/struct-return-loongarch64-byreg.fir
A flang/test/Fir/struct-return-powerpc64-aix.fir
A flang/test/Fir/struct-return-ppc64le.fir
M flang/test/Fir/struct-return-x86-64.fir
M flang/test/Fir/target-rewrite-complex-10-x86.fir
M flang/test/Fir/target-rewrite-complex.fir
M flang/test/Fir/target-rewrite-complex16.fir
M flang/test/Fir/target-rewrite-indirect-calls.fir
M flang/test/Fir/target-rewrite-integer-loongarch64.fir
M flang/test/Fir/target.fir
M flang/test/HLFIR/all-lowering.fir
M flang/test/HLFIR/any-lowering.fir
M flang/test/HLFIR/assign-codegen-derived.fir
M flang/test/HLFIR/associate-codegen.fir
M flang/test/HLFIR/assumed-type-actual-args.f90
M flang/test/HLFIR/boxchar_emboxing.f90
M flang/test/HLFIR/c_ptr_byvalue.f90
M flang/test/HLFIR/count-lowering.fir
M flang/test/HLFIR/cshift-lowering.fir
M flang/test/HLFIR/designate-codegen-component-refs.fir
M flang/test/HLFIR/dot_product-lowering.fir
M flang/test/HLFIR/elemental-codegen-nested.fir
M flang/test/HLFIR/maxloc-lowering.fir
M flang/test/HLFIR/maxval-elemental.fir
M flang/test/HLFIR/maxval-lowering.fir
M flang/test/HLFIR/minloc-lowering.fir
M flang/test/HLFIR/minval-lowering.fir
M flang/test/HLFIR/mul_transpose.f90
M flang/test/HLFIR/opt-bufferization-eval_in_mem.fir
A flang/test/HLFIR/order_assignments/forall-pointer-assignment-codegen.fir
A flang/test/HLFIR/order_assignments/forall-pointer-assignment-scheduling-bounds.f90
A flang/test/HLFIR/order_assignments/forall-pointer-assignment-scheduling-polymorphic.f90
A flang/test/HLFIR/order_assignments/forall-pointer-assignment-scheduling.f90
A flang/test/HLFIR/order_assignments/forall-proc-pointer-assignment-codegen.fir
A flang/test/HLFIR/order_assignments/forall-proc-pointer-assignment-scheduling-character.f90
A flang/test/HLFIR/order_assignments/forall-proc-pointer-assignment-scheduling.f90
M flang/test/HLFIR/order_assignments/user-defined-assignment.fir
M flang/test/HLFIR/order_assignments/vector-subscripts-codegen.fir
M flang/test/HLFIR/product-lowering.fir
M flang/test/HLFIR/reshape-lowering.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-cshift.fir
M flang/test/HLFIR/sum-lowering.fir
M flang/test/HLFIR/transpose-lowering.fir
M flang/test/Integration/OpenMP/map-types-and-sizes.f90
M flang/test/Integration/OpenMP/parallel-private-reduction-worstcase.f90
M flang/test/Integration/OpenMP/private-global.f90
M flang/test/Integration/debug-complex-1.f90
A flang/test/Integration/debug-cyclic-derived-type-4.f90
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/CUDA/cuda-cdevloc.cuf
M flang/test/Lower/CUDA/cuda-data-attribute.cuf
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
M flang/test/Lower/CUDA/cuda-device-proc.cuf
M flang/test/Lower/CUDA/cuda-devptr.cuf
M flang/test/Lower/CUDA/cuda-doconc.cuf
A flang/test/Lower/CUDA/cuda-kernel-alloca-block.cuf
M flang/test/Lower/CUDA/cuda-kernel-calls.cuf
M flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf
A flang/test/Lower/CUDA/cuda-pointer.cuf
M flang/test/Lower/CUDA/cuda-return01.cuf
M flang/test/Lower/CUDA/cuda-return02.cuf
A flang/test/Lower/CUDA/cuda-shared.cuf
A flang/test/Lower/CUDA/cuda-shared01.cuf
M flang/test/Lower/HLFIR/actual_target_for_dummy_pointer.f90
M flang/test/Lower/HLFIR/allocatable-and-pointer-status-change.f90
M flang/test/Lower/HLFIR/allocatable-end-of-scope-dealloc.f90
M flang/test/Lower/HLFIR/allocatable-return.f90
M flang/test/Lower/HLFIR/allocatables-and-pointers.f90
M flang/test/Lower/HLFIR/array-ctor-as-elemental.f90
M flang/test/Lower/HLFIR/array-ctor-derived.f90
M flang/test/Lower/HLFIR/array-ctor-index.f90
M flang/test/Lower/HLFIR/associate-construct.f90
M flang/test/Lower/HLFIR/assumed-rank-iface.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries-2.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries.f90
M flang/test/Lower/HLFIR/bindc-entry-stmt.f90
M flang/test/Lower/HLFIR/bindc-value-derived.f90
M flang/test/Lower/HLFIR/c_ptr-constant-init.f90
M flang/test/Lower/HLFIR/call-issue-124043.f90
M flang/test/Lower/HLFIR/call-sequence-associated-descriptors.f90
M flang/test/Lower/HLFIR/calls-array-results.f90
M flang/test/Lower/HLFIR/calls-assumed-shape.f90
M flang/test/Lower/HLFIR/calls-constant-expr-arg.f90
M flang/test/Lower/HLFIR/calls-f77.f90
M flang/test/Lower/HLFIR/calls-optional.f90
M flang/test/Lower/HLFIR/calls-percent-val-ref.f90
M flang/test/Lower/HLFIR/cray-pointers.f90
M flang/test/Lower/HLFIR/custom-intrinsic.f90
M flang/test/Lower/HLFIR/elemental-array-ops.f90
M flang/test/Lower/HLFIR/elemental-call-vector-subscripts.f90
M flang/test/Lower/HLFIR/elemental-user-procedure-ref.f90
M flang/test/Lower/HLFIR/entry_return.f90
M flang/test/Lower/HLFIR/expr-addr.f90
M flang/test/Lower/HLFIR/expr-as-inquired.f90
M flang/test/Lower/HLFIR/function-return-as-expr.f90
M flang/test/Lower/HLFIR/function-return.f90
M flang/test/Lower/HLFIR/goto-do-body.f90
M flang/test/Lower/HLFIR/ignore-rank-unlimited-polymorphic.f90
M flang/test/Lower/HLFIR/implicit-call-mismatch.f90
M flang/test/Lower/HLFIR/intentout-allocatable-components.f90
M flang/test/Lower/HLFIR/internal-procedures.f90
M flang/test/Lower/HLFIR/intrinsic-dynamically-optional.f90
M flang/test/Lower/HLFIR/intrinsic-module-procedures.f90
M flang/test/Lower/HLFIR/intrinsic-subroutines.f90
M flang/test/Lower/HLFIR/issue80884.f90
M flang/test/Lower/HLFIR/maxloc.f90
M flang/test/Lower/HLFIR/maxval.f90
M flang/test/Lower/HLFIR/minloc.f90
M flang/test/Lower/HLFIR/minval.f90
M flang/test/Lower/HLFIR/null.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-nopass.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-pass.f90
M flang/test/Lower/HLFIR/procedure-designators.f90
M flang/test/Lower/HLFIR/procedure-pointer.f90
M flang/test/Lower/HLFIR/product.f90
M flang/test/Lower/HLFIR/reshape.f90
M flang/test/Lower/HLFIR/select-rank.f90
M flang/test/Lower/HLFIR/select-type-selector.f90
M flang/test/Lower/HLFIR/structure-constructor.f90
M flang/test/Lower/HLFIR/sum.f90
M flang/test/Lower/HLFIR/transformational.f90
M flang/test/Lower/HLFIR/type-info-components.f90
M flang/test/Lower/HLFIR/user-defined-assignment.f90
M flang/test/Lower/HLFIR/vector-subscript-as-value.f90
M flang/test/Lower/Intrinsics/acos_complex16.f90
M flang/test/Lower/Intrinsics/acosh_complex16.f90
M flang/test/Lower/Intrinsics/asin_complex16.f90
M flang/test/Lower/Intrinsics/asinh_complex16.f90
M flang/test/Lower/Intrinsics/associated-proc-pointers.f90
M flang/test/Lower/Intrinsics/atan_complex16.f90
M flang/test/Lower/Intrinsics/atanh_complex16.f90
M flang/test/Lower/Intrinsics/c_associated.f90
M flang/test/Lower/Intrinsics/c_f_pointer.f90
M flang/test/Lower/Intrinsics/c_f_procpointer.f90
M flang/test/Lower/Intrinsics/c_funloc-proc-pointers.f90
M flang/test/Lower/Intrinsics/c_funloc.f90
M flang/test/Lower/Intrinsics/c_loc.f90
M flang/test/Lower/Intrinsics/c_ptr_eq_ne.f90
M flang/test/Lower/Intrinsics/chdir.f90
M flang/test/Lower/Intrinsics/cos_complex16.f90
M flang/test/Lower/Intrinsics/cosh_complex16.f90
M flang/test/Lower/Intrinsics/erfc.f90
M flang/test/Lower/Intrinsics/exp_complex16.f90
A flang/test/Lower/Intrinsics/hostnm-func.f90
A flang/test/Lower/Intrinsics/hostnm-sub.f90
M flang/test/Lower/Intrinsics/ieee_class.f90
M flang/test/Lower/Intrinsics/ieee_compare.f90
M flang/test/Lower/Intrinsics/ieee_flag.f90
M flang/test/Lower/Intrinsics/ieee_logb.f90
M flang/test/Lower/Intrinsics/ieee_max_min.f90
M flang/test/Lower/Intrinsics/ieee_next.f90
M flang/test/Lower/Intrinsics/ieee_operator_eq.f90
M flang/test/Lower/Intrinsics/ieee_real.f90
M flang/test/Lower/Intrinsics/ieee_rem.f90
M flang/test/Lower/Intrinsics/ieee_rint_int.f90
M flang/test/Lower/Intrinsics/ieee_rounding.f90
M flang/test/Lower/Intrinsics/ieee_unordered.f90
M flang/test/Lower/Intrinsics/loc.f90
M flang/test/Lower/Intrinsics/log_complex16.f90
M flang/test/Lower/Intrinsics/min.f90
M flang/test/Lower/Intrinsics/nearest.f90
M flang/test/Lower/Intrinsics/pow_complex16.f90
M flang/test/Lower/Intrinsics/pow_complex16i.f90
M flang/test/Lower/Intrinsics/pow_complex16k.f90
M flang/test/Lower/Intrinsics/product.f90
M flang/test/Lower/Intrinsics/reduce.f90
M flang/test/Lower/Intrinsics/rename.f90
M flang/test/Lower/Intrinsics/second.f90
M flang/test/Lower/Intrinsics/selected_logical_kind.f90
M flang/test/Lower/Intrinsics/shape.f90
M flang/test/Lower/Intrinsics/signal.f90
M flang/test/Lower/Intrinsics/sin_complex16.f90
M flang/test/Lower/Intrinsics/sinh_complex16.f90
M flang/test/Lower/Intrinsics/sqrt_complex16.f90
M flang/test/Lower/Intrinsics/storage_size.f90
M flang/test/Lower/Intrinsics/sum.f90
M flang/test/Lower/Intrinsics/system-optional.f90
M flang/test/Lower/Intrinsics/system.f90
M flang/test/Lower/Intrinsics/tan_complex16.f90
M flang/test/Lower/Intrinsics/tanh_complex16.f90
M flang/test/Lower/Intrinsics/transfer.f90
M flang/test/Lower/OpenACC/acc-atomic-capture.f90
M flang/test/Lower/OpenACC/acc-atomic-read.f90
M flang/test/Lower/OpenACC/acc-atomic-update-array.f90
M flang/test/Lower/OpenACC/acc-atomic-update-hlfir.f90
M flang/test/Lower/OpenACC/acc-atomic-update.f90
M flang/test/Lower/OpenACC/acc-atomic-write.f90
M flang/test/Lower/OpenACC/acc-data-operands-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-data-operands.f90
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/OpenACC/acc-enter-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-enter-data.f90
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-kernels.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-parallel.f90
M flang/test/Lower/OpenACC/acc-private-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-private.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
M flang/test/Lower/OpenACC/acc-serial.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/distribute-standalone-private.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-multiple-variables.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/wsloop.f90
R flang/test/Lower/OpenMP/Todo/from-expectation-modifier.f90
R flang/test/Lower/OpenMP/Todo/map-modifiers-close.f90
R flang/test/Lower/OpenMP/Todo/map-modifiers-ompxhold.f90
R flang/test/Lower/OpenMP/Todo/map-modifiers-present.f90
A flang/test/Lower/OpenMP/Todo/omp-declare-reduction-initsub.f90
M flang/test/Lower/OpenMP/Todo/omp-default-clause-inner-loop.f90
A flang/test/Lower/OpenMP/Todo/taskloop-cancel.f90
R flang/test/Lower/OpenMP/Todo/to-expectation-modifier.f90
M flang/test/Lower/OpenMP/allocatable-array-bounds.f90
M flang/test/Lower/OpenMP/allocatable-map.f90
M flang/test/Lower/OpenMP/array-bounds.f90
M flang/test/Lower/OpenMP/atomic-capture.f90
M flang/test/Lower/OpenMP/atomic-read.f90
M flang/test/Lower/OpenMP/atomic-update.f90
M flang/test/Lower/OpenMP/atomic-write.f90
M flang/test/Lower/OpenMP/common-atomic-lowering.f90
M flang/test/Lower/OpenMP/copyin-order.f90
M flang/test/Lower/OpenMP/copyin.f90
M flang/test/Lower/OpenMP/copyprivate2.f90
M flang/test/Lower/OpenMP/critical.f90
M flang/test/Lower/OpenMP/declare-mapper.f90
M flang/test/Lower/OpenMP/default-clause.f90
M flang/test/Lower/OpenMP/derived-type-allocatable-map.f90
M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
M flang/test/Lower/OpenMP/distribute.f90
M flang/test/Lower/OpenMP/flush.f90
M flang/test/Lower/OpenMP/generic-loop-rewriting.f90
A flang/test/Lower/OpenMP/has_device_addr-mapinfo.f90
M flang/test/Lower/OpenMP/hlfir-seqloop-parallel.f90
M flang/test/Lower/OpenMP/lastprivate-allocatable.f90
M flang/test/Lower/OpenMP/lastprivate-commonblock.f90
M flang/test/Lower/OpenMP/lastprivate-iv.f90
M flang/test/Lower/OpenMP/lastprivate-simd.f90
M flang/test/Lower/OpenMP/loop-directive.f90
A flang/test/Lower/OpenMP/loop-pointer-variable.f90
M flang/test/Lower/OpenMP/map-mapper.f90
A flang/test/Lower/OpenMP/map-modifiers.f90
M flang/test/Lower/OpenMP/math-amdgpu.f90
A flang/test/Lower/OpenMP/missing-inode.f90
M flang/test/Lower/OpenMP/order-clause.f90
M flang/test/Lower/OpenMP/parallel-lastprivate-clause-scalar.f90
M flang/test/Lower/OpenMP/parallel-private-clause-fixes.f90
M flang/test/Lower/OpenMP/parallel-private-clause.f90
M flang/test/Lower/OpenMP/parallel-reduction-allocatable-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-array-lb.f90
M flang/test/Lower/OpenMP/parallel-reduction-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-array2.f90
M flang/test/Lower/OpenMP/parallel-reduction-mixed.f90
M flang/test/Lower/OpenMP/parallel-reduction-pointer-array.f90
M flang/test/Lower/OpenMP/parallel-reduction3.f90
M flang/test/Lower/OpenMP/parallel-wsloop-firstpriv.f90
M flang/test/Lower/OpenMP/parallel-wsloop-lastpriv.f90
M flang/test/Lower/OpenMP/parallel-wsloop.f90
M flang/test/Lower/OpenMP/parallel.f90
M flang/test/Lower/OpenMP/private-commonblock.f90
M flang/test/Lower/OpenMP/private-derived-type.f90
A flang/test/Lower/OpenMP/privatization-proc-ptr.f90
A flang/test/Lower/OpenMP/real10.f90
M flang/test/Lower/OpenMP/reduction-array-intrinsic.f90
A flang/test/Lower/OpenMP/reduction-equivalence.f90
M flang/test/Lower/OpenMP/scan.f90
M flang/test/Lower/OpenMP/sections.f90
M flang/test/Lower/OpenMP/shared-loop.f90
M flang/test/Lower/OpenMP/simd.f90
M flang/test/Lower/OpenMP/simd_x86_64.f90
M flang/test/Lower/OpenMP/single.f90
M flang/test/Lower/OpenMP/stop-stmt-in-region.f90
A flang/test/Lower/OpenMP/target-map-complex.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/OpenMP/task.f90
M flang/test/Lower/OpenMP/threadprivate-char-array-chararray.f90
A flang/test/Lower/OpenMP/threadprivate-common-block-pointer.f90
M flang/test/Lower/OpenMP/threadprivate-commonblock.f90
M flang/test/Lower/OpenMP/threadprivate-default-clause.f90
M flang/test/Lower/OpenMP/threadprivate-hlfir.f90
M flang/test/Lower/OpenMP/threadprivate-host-association.f90
M flang/test/Lower/OpenMP/threadprivate-integer-different-kinds.f90
M flang/test/Lower/OpenMP/threadprivate-pointer-allocatable.f90
M flang/test/Lower/OpenMP/threadprivate-real-logical-complex-derivedtype.f90
M flang/test/Lower/OpenMP/threadprivate-use-association-2-hlfir.f90
M flang/test/Lower/OpenMP/threadprivate-use-association.f90
M flang/test/Lower/OpenMP/unstructured.f90
M flang/test/Lower/OpenMP/wsloop-chunks.f90
M flang/test/Lower/OpenMP/wsloop-collapse.f90
M flang/test/Lower/OpenMP/wsloop-monotonic.f90
M flang/test/Lower/OpenMP/wsloop-nonmonotonic.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add.f90
M flang/test/Lower/OpenMP/wsloop-reduction-allocatable-array-minmax.f90
M flang/test/Lower/OpenMP/wsloop-reduction-allocatable.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array-assumed-shape.f90
A flang/test/Lower/OpenMP/wsloop-reduction-array-lb.f90
A flang/test/Lower/OpenMP/wsloop-reduction-array-lb2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ieor-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ieor.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul.f90
M flang/test/Lower/OpenMP/wsloop-reduction-multiple-clauses.f90
M flang/test/Lower/OpenMP/wsloop-reduction-pointer.f90
M flang/test/Lower/OpenMP/wsloop-schedule.f90
M flang/test/Lower/OpenMP/wsloop-variable.f90
M flang/test/Lower/OpenMP/wsloop.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocate-source-allocatables-2.f90
M flang/test/Lower/array-character.f90
M flang/test/Lower/array-elemental-calls-2.f90
M flang/test/Lower/array-elemental-calls-char-byval.f90
M flang/test/Lower/array-elemental-calls-char.f90
M flang/test/Lower/c-interoperability-c-pointer.f90
M flang/test/Lower/c_ptr-constant-init.f90
M flang/test/Lower/call-by-value-attr.f90
M flang/test/Lower/call-by-value.f90
M flang/test/Lower/call-copy-in-out.f90
M flang/test/Lower/complex-operations.f90
M flang/test/Lower/components.f90
M flang/test/Lower/default-initialization.f90
M flang/test/Lower/derived-allocatable-components.f90
M flang/test/Lower/derived-pointer-components.f90
M flang/test/Lower/derived-type-finalization.f90
M flang/test/Lower/derived-type-temp.f90
M flang/test/Lower/derived-types.f90
M flang/test/Lower/entry-statement.f90
M flang/test/Lower/equivalence-1.f90
M flang/test/Lower/forall/array-pointer.f90
M flang/test/Lower/forall/character-1.f90
M flang/test/Lower/forall/forall-allocatable-2.f90
M flang/test/Lower/forall/forall-where.f90
M flang/test/Lower/identical-block-merge-disable.f90
M flang/test/Lower/intentout-deallocate.f90
M flang/test/Lower/io-asynchronous.f90
M flang/test/Lower/io-derived-type.f90
M flang/test/Lower/nullify-polymorphic.f90
M flang/test/Lower/parent-component.f90
M flang/test/Lower/pointer-assignments.f90
M flang/test/Lower/pointer-default-init.f90
M flang/test/Lower/polymorphic-temp.f90
M flang/test/Lower/polymorphic.f90
M flang/test/Lower/pre-fir-tree04.f90
A flang/test/Lower/repack-arrays-asynchronous.f90
A flang/test/Lower/repack-arrays-finalized-dummy.f90
A flang/test/Lower/repack-arrays-target.f90
A flang/test/Lower/repack-arrays.f90
M flang/test/Lower/select-type.f90
M flang/test/Lower/structure-constructors-alloc-comp.f90
M flang/test/Lower/structure-constructors.f90
M flang/test/Parser/OpenMP/declare-reduction-unparse.f90
M flang/test/Parser/OpenMP/depobj-construct.f90
M flang/test/Parser/OpenMP/doacross-clause.f90
M flang/test/Parser/OpenMP/from-clause.f90
M flang/test/Parser/OpenMP/if-clause.f90
M flang/test/Parser/OpenMP/metadirective-dirspec.f90
A flang/test/Parser/OpenMP/metadirective-flush.f90
M flang/test/Parser/OpenMP/metadirective-v50.f90
M flang/test/Parser/OpenMP/metadirective.f90
M flang/test/Parser/OpenMP/ordered-depend.f90
M flang/test/Parser/OpenMP/scan.f90
M flang/test/Parser/OpenMP/target-update-to-clause.f90
A flang/test/Parser/func-label.f
A flang/test/Preprocessing/bug126459.F90
A flang/test/Preprocessing/fd-lines-as.f90
A flang/test/Semantics/Inputs/modfile72.f90
A flang/test/Semantics/Inputs/modfile73-a.f90
A flang/test/Semantics/Inputs/modfile73-b.f90
A flang/test/Semantics/Inputs/modfile73-c.f90
A flang/test/Semantics/OpenMP/cancel.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
A flang/test/Semantics/OpenMP/declare-reduction-error.f90
M flang/test/Semantics/OpenMP/declare-reduction.f90
M flang/test/Semantics/OpenMP/depend01.f90
M flang/test/Semantics/OpenMP/depobj-construct-v50.f90
A flang/test/Semantics/OpenMP/equivalence-namelist.f90
M flang/test/Semantics/OpenMP/flush01.f90
A flang/test/Semantics/OpenMP/flush03.f90
M flang/test/Semantics/OpenMP/loop-bind.f90
M flang/test/Semantics/OpenMP/metadirective-common.f90
A flang/test/Semantics/OpenMP/single03.f90
A flang/test/Semantics/OpenMP/single04.f90
A flang/test/Semantics/OpenMP/test_taskloop_lastprivate_semantic_restrictions.f90
A flang/test/Semantics/OpenMP/test_taskloop_reduction_semantic_restrictions.f90
M flang/test/Semantics/OpenMP/threadprivate04.f90
M flang/test/Semantics/abstract02.f90
M flang/test/Semantics/allocate11.f90
M flang/test/Semantics/allocate12.f90
M flang/test/Semantics/array-constr-len.f90
M flang/test/Semantics/array-constr-values.f90
M flang/test/Semantics/assign02.f90
M flang/test/Semantics/assign11.f90
M flang/test/Semantics/associated.f90
M flang/test/Semantics/bind-c09.f90
M flang/test/Semantics/bindings01.f90
A flang/test/Semantics/bug125774.f90
A flang/test/Semantics/bug131579.f90
A flang/test/Semantics/bug396.f90
M flang/test/Semantics/c_f_pointer.f90
M flang/test/Semantics/call04.f90
M flang/test/Semantics/call06.f90
M flang/test/Semantics/call09.f90
M flang/test/Semantics/call10.f90
M flang/test/Semantics/call12.f90
M flang/test/Semantics/call24.f90
M flang/test/Semantics/call27.f90
M flang/test/Semantics/change_team01.f90
A flang/test/Semantics/change_team02.f90
M flang/test/Semantics/coarrays01.f90
A flang/test/Semantics/coarrays02.f90
M flang/test/Semantics/collectives05.f90
M flang/test/Semantics/coshape.f90
M flang/test/Semantics/critical02.f90
M flang/test/Semantics/cuf09.cuf
M flang/test/Semantics/cuf13.cuf
M flang/test/Semantics/data05.f90
M flang/test/Semantics/deallocate05.f90
M flang/test/Semantics/definable01.f90
M flang/test/Semantics/doconcurrent01.f90
M flang/test/Semantics/doconcurrent08.f90
M flang/test/Semantics/event02b.f90
M flang/test/Semantics/expr-errors06.f90
M flang/test/Semantics/form_team01.f90
M flang/test/Semantics/form_team01a.f90
M flang/test/Semantics/form_team01b.f90
M flang/test/Semantics/generic07.f90
A flang/test/Semantics/generic13.f90
A flang/test/Semantics/hostnm.f90
M flang/test/Semantics/init01.f90
M flang/test/Semantics/intrinsics01.f90
M flang/test/Semantics/io11.f90
M flang/test/Semantics/lockstmt03.f90
M flang/test/Semantics/modfile12.f90
A flang/test/Semantics/modfile72.f90
A flang/test/Semantics/modfile73.f90
A flang/test/Semantics/modfile74.f90
M flang/test/Semantics/move_alloc.f90
M flang/test/Semantics/null01.f90
A flang/test/Semantics/pdt04.f90
M flang/test/Semantics/resolve07.f90
M flang/test/Semantics/resolve105.f90
M flang/test/Semantics/resolve117.f90
M flang/test/Semantics/resolve34.f90
M flang/test/Semantics/resolve40.f90
M flang/test/Semantics/resolve50.f90
M flang/test/Semantics/resolve55.f90
M flang/test/Semantics/resolve88.f90
M flang/test/Semantics/resolve94.f90
M flang/test/Semantics/structconst03.f90
M flang/test/Semantics/structconst04.f90
M flang/test/Semantics/symbol09.f90
M flang/test/Semantics/this_image01.f90
A flang/test/Transforms/debug-associate-component.fir
A flang/test/Transforms/debug-dummy-argument.fir
A flang/test/Transforms/do_concurrent-to-do_loop-unodered.fir
M flang/test/Transforms/generic-loop-rewriting-todo.mlir
M flang/test/Transforms/omp-map-info-finalization-implicit-field.fir
M flang/test/Transforms/omp-map-info-finalization.fir
A flang/test/Transforms/simplify-fir-operations.fir
M flang/test/Transforms/simplifyintrinsics.fir
M flang/test/Transforms/stack-arrays-hlfir.f90
M flang/tools/bbc/bbc.cpp
M flang/tools/f18/CMakeLists.txt
M flang/tools/flang-driver/CMakeLists.txt
M flang/tools/flang-driver/fc1_main.cpp
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCArchitectures.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/cmake/modules/prepare_libc_gpu_build.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/config.json
M libc/config/darwin/arm/entrypoints.txt
M libc/config/gpu/amdgpu/config.json
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/config.json
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/aarch64/headers.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/linux/x86_64/headers.txt
A libc/config/uefi/config.json
A libc/config/uefi/entrypoints.txt
A libc/config/uefi/headers.txt
M libc/config/windows/entrypoints.txt
M libc/docs/CMakeLists.txt
M libc/docs/configure.rst
M libc/docs/dev/header_generation.rst
M libc/docs/dev/undefined_behavior.rst
M libc/docs/getting_started.rst
M libc/docs/gpu/rpc.rst
M libc/docs/headers/index.rst
M libc/docs/headers/math/index.rst
R libc/docs/headers/math/stdfix.rst
A libc/docs/headers/stdfix.rst
M libc/docs/index.rst
M libc/docs/talks.rst
A libc/docs/uefi/building.rst
A libc/docs/uefi/index.rst
A libc/docs/uefi/support.rst
A libc/docs/uefi/testing.rst
A libc/docs/uefi/using.rst
M libc/hdr/CMakeLists.txt
A libc/hdr/locale_macros.h
A libc/hdr/sched_macros.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/cpu_set_t.h
A libc/hdr/types/struct_dl_phdr_info.h
M libc/hdr/wchar_overlay.h
M libc/include/CMakeLists.txt
A libc/include/Uefi.h.def
A libc/include/Uefi.yaml
R libc/include/link.h.def
M libc/include/link.yaml
M libc/include/llvm-libc-macros/CMakeLists.txt
A libc/include/llvm-libc-macros/EFIAPI-macros.h
M libc/include/llvm-libc-macros/linux/sched-macros.h
M libc/include/llvm-libc-macros/stdfix-macros.h
A libc/include/llvm-libc-macros/sysexits-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/EFI_ALLOCATE_TYPE.h
A libc/include/llvm-libc-types/EFI_BOOT_SERVICES.h
A libc/include/llvm-libc-types/EFI_CAPSULE.h
A libc/include/llvm-libc-types/EFI_CONFIGURATION_TABLE.h
A libc/include/llvm-libc-types/EFI_DEVICE_PATH_PROTOCOL.h
A libc/include/llvm-libc-types/EFI_EVENT.h
A libc/include/llvm-libc-types/EFI_GUID.h
A libc/include/llvm-libc-types/EFI_HANDLE.h
A libc/include/llvm-libc-types/EFI_INTERFACE_TYPE.h
A libc/include/llvm-libc-types/EFI_LOCATE_SEARCH_TYPE.h
A libc/include/llvm-libc-types/EFI_MEMORY_DESCRIPTOR.h
A libc/include/llvm-libc-types/EFI_MEMORY_TYPE.h
A libc/include/llvm-libc-types/EFI_OPEN_PROTOCOL_INFORMATION_ENTRY.h
A libc/include/llvm-libc-types/EFI_PHYSICAL_ADDRESS.h
A libc/include/llvm-libc-types/EFI_RUNTIME_SERVICES.h
A libc/include/llvm-libc-types/EFI_SIMPLE_TEXT_INPUT_PROTOCOL.h
A libc/include/llvm-libc-types/EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL.h
A libc/include/llvm-libc-types/EFI_STATUS.h
A libc/include/llvm-libc-types/EFI_SYSTEM_TABLE.h
A libc/include/llvm-libc-types/EFI_TABLE_HEADER.h
A libc/include/llvm-libc-types/EFI_TIME.h
A libc/include/llvm-libc-types/EFI_TIMER_DELAY.h
A libc/include/llvm-libc-types/EFI_TPL.h
A libc/include/llvm-libc-types/EFI_VIRTUAL_ADDRESS.h
A libc/include/llvm-libc-types/__dl_iterate_phdr_callback_t.h
M libc/include/llvm-libc-types/cpu_set_t.h
A libc/include/llvm-libc-types/struct_dl_phdr_info.h
M libc/include/math.yaml
M libc/include/search.yaml
M libc/include/stdfix.yaml
M libc/include/strings.yaml
A libc/include/sysexits.h.def
A libc/include/sysexits.yaml
M libc/shared/rpc_opcodes.h
A libc/shared/rpc_server.h
M libc/src/CMakeLists.txt
M libc/src/__support/CPP/atomic.h
M libc/src/__support/CPP/bit.h
M libc/src/__support/CPP/span.h
M libc/src/__support/CPP/string.h
M libc/src/__support/CPP/string_view.h
M libc/src/__support/FPUtil/FMA.h
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/FPUtil/NormalFloat.h
M libc/src/__support/FPUtil/aarch64/FEnvImpl.h
M libc/src/__support/FPUtil/aarch64/fenv_darwin_impl.h
M libc/src/__support/FPUtil/double_double.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/FPUtil/generic/CMakeLists.txt
M libc/src/__support/FPUtil/generic/add_sub.h
M libc/src/__support/FPUtil/generic/sqrt_80_bit_long_double.h
M libc/src/__support/FPUtil/multiply_add.h
M libc/src/__support/OSUtil/darwin/io.h
M libc/src/__support/OSUtil/io.h
A libc/src/__support/OSUtil/uefi/CMakeLists.txt
A libc/src/__support/OSUtil/uefi/exit.cpp
A libc/src/__support/OSUtil/uefi/io.cpp
A libc/src/__support/OSUtil/uefi/io.h
A libc/src/__support/RPC/rpc_server.h
M libc/src/__support/big_int.h
M libc/src/__support/fixed_point/fx_bits.h
M libc/src/__support/float_to_string.h
M libc/src/__support/high_precision_decimal.h
M libc/src/__support/integer_literals.h
M libc/src/__support/integer_to_string.h
M libc/src/__support/macros/properties/cpu_features.h
M libc/src/__support/math_extras.h
M libc/src/__support/memory_size.h
M libc/src/__support/str_to_float.h
M libc/src/__support/str_to_integer.h
A libc/src/link/CMakeLists.txt
A libc/src/link/dl_iterate_phdr.cpp
A libc/src/link/dl_iterate_phdr.h
M libc/src/locale/CMakeLists.txt
M libc/src/locale/duplocale.cpp
M libc/src/locale/freelocale.cpp
M libc/src/locale/locale.cpp
M libc/src/locale/newlocale.cpp
M libc/src/locale/newlocale.h
M libc/src/locale/setlocale.cpp
M libc/src/locale/setlocale.h
M libc/src/math/CMakeLists.txt
A libc/src/math/acoshf16.h
A libc/src/math/fmaf16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/acosf.cpp
M libc/src/math/generic/acosf16.cpp
M libc/src/math/generic/acoshf.cpp
A libc/src/math/generic/acoshf16.cpp
M libc/src/math/generic/asinf.cpp
M libc/src/math/generic/asinhf.cpp
A libc/src/math/generic/atan.cpp
M libc/src/math/generic/atan2.cpp
M libc/src/math/generic/atan2f.cpp
A libc/src/math/generic/atan_utils.h
M libc/src/math/generic/atanf.cpp
M libc/src/math/generic/cbrt.cpp
M libc/src/math/generic/cbrtf.cpp
M libc/src/math/generic/common_constants.cpp
M libc/src/math/generic/cos.cpp
M libc/src/math/generic/cosf.cpp
M libc/src/math/generic/cosf16.cpp
M libc/src/math/generic/coshf16.cpp
M libc/src/math/generic/cospif.cpp
M libc/src/math/generic/erff.cpp
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/exp10.cpp
M libc/src/math/generic/exp10f16.cpp
M libc/src/math/generic/exp10m1f.cpp
M libc/src/math/generic/exp10m1f16.cpp
M libc/src/math/generic/exp2.cpp
M libc/src/math/generic/exp2f16.cpp
M libc/src/math/generic/exp2f_impl.h
M libc/src/math/generic/exp2m1f.cpp
M libc/src/math/generic/exp2m1f16.cpp
M libc/src/math/generic/expf.cpp
M libc/src/math/generic/expf16.cpp
M libc/src/math/generic/explogxf.cpp
M libc/src/math/generic/explogxf.h
M libc/src/math/generic/expm1f.cpp
M libc/src/math/generic/expm1f16.cpp
A libc/src/math/generic/fmaf16.cpp
M libc/src/math/generic/fmul.cpp
M libc/src/math/generic/hypotf.cpp
M libc/src/math/generic/log.cpp
M libc/src/math/generic/log10.cpp
M libc/src/math/generic/log10f.cpp
M libc/src/math/generic/log10f16.cpp
M libc/src/math/generic/log1p.cpp
M libc/src/math/generic/log1pf.cpp
M libc/src/math/generic/log2.cpp
M libc/src/math/generic/log2f.cpp
M libc/src/math/generic/log2f16.cpp
M libc/src/math/generic/logf.cpp
M libc/src/math/generic/logf16.cpp
M libc/src/math/generic/pow.cpp
M libc/src/math/generic/powf.cpp
M libc/src/math/generic/range_reduction_double_common.h
M libc/src/math/generic/range_reduction_double_fma.h
M libc/src/math/generic/range_reduction_double_nofma.h
M libc/src/math/generic/sin.cpp
M libc/src/math/generic/sincos.cpp
M libc/src/math/generic/sincos_eval.h
M libc/src/math/generic/sincosf.cpp
M libc/src/math/generic/sincosf16_utils.h
M libc/src/math/generic/sincosf_utils.h
M libc/src/math/generic/sinf.cpp
M libc/src/math/generic/sinf16.cpp
M libc/src/math/generic/sinhf.cpp
M libc/src/math/generic/sinhf16.cpp
M libc/src/math/generic/tan.cpp
M libc/src/math/generic/tanf.cpp
M libc/src/math/generic/tanf16.cpp
M libc/src/math/generic/tanhf16.cpp
M libc/src/math/generic/tanpif16.cpp
M libc/src/sched/CMakeLists.txt
M libc/src/sched/linux/CMakeLists.txt
M libc/src/sched/linux/sched_getcpucount.cpp
A libc/src/sched/linux/sched_getcpuisset.cpp
A libc/src/sched/linux/sched_setcpuset.cpp
A libc/src/sched/linux/sched_setcpuzero.cpp
A libc/src/sched/sched_getcpuisset.h
A libc/src/sched/sched_setcpuset.h
A libc/src/sched/sched_setcpuzero.h
M libc/src/search/CMakeLists.txt
M libc/src/search/lfind.cpp
A libc/src/search/lsearch.cpp
A libc/src/search/lsearch.h
M libc/src/stdfix/CMakeLists.txt
A libc/src/stdfix/bitshk.cpp
A libc/src/stdfix/bitshk.h
A libc/src/stdfix/bitshr.cpp
A libc/src/stdfix/bitshr.h
A libc/src/stdfix/bitsk.cpp
A libc/src/stdfix/bitsk.h
A libc/src/stdfix/bitslk.cpp
A libc/src/stdfix/bitslk.h
A libc/src/stdfix/bitslr.cpp
A libc/src/stdfix/bitslr.h
A libc/src/stdfix/bitsr.cpp
A libc/src/stdfix/bitsr.h
A libc/src/stdfix/bitsuhk.cpp
A libc/src/stdfix/bitsuhk.h
A libc/src/stdfix/bitsuhr.cpp
A libc/src/stdfix/bitsuhr.h
A libc/src/stdfix/bitsuk.cpp
A libc/src/stdfix/bitsuk.h
A libc/src/stdfix/bitsulk.cpp
A libc/src/stdfix/bitsulk.h
A libc/src/stdfix/bitsulr.cpp
A libc/src/stdfix/bitsulr.h
A libc/src/stdfix/bitsur.cpp
A libc/src/stdfix/bitsur.h
A libc/src/stdfix/bitusk.cpp
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/baremetal/CMakeLists.txt
M libc/src/stdio/baremetal/getchar.cpp
M libc/src/stdio/baremetal/printf.cpp
A libc/src/stdio/baremetal/scanf.cpp
A libc/src/stdio/baremetal/scanf_internal.h
M libc/src/stdio/baremetal/vprintf.cpp
A libc/src/stdio/baremetal/vscanf.cpp
R libc/src/stdio/fscanf.cpp
M libc/src/stdio/generic/CMakeLists.txt
A libc/src/stdio/generic/fscanf.cpp
A libc/src/stdio/generic/scanf.cpp
A libc/src/stdio/generic/vfscanf.cpp
A libc/src/stdio/generic/vscanf.cpp
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/char_converter.h
R libc/src/stdio/printf_core/converter.cpp
M libc/src/stdio/printf_core/converter.h
M libc/src/stdio/printf_core/fixed_converter.h
M libc/src/stdio/printf_core/float_dec_converter.h
M libc/src/stdio/printf_core/float_dec_converter_limited.h
M libc/src/stdio/printf_core/float_hex_converter.h
M libc/src/stdio/printf_core/float_inf_nan_converter.h
M libc/src/stdio/printf_core/int_converter.h
M libc/src/stdio/printf_core/parser.h
R libc/src/stdio/printf_core/printf_main.cpp
M libc/src/stdio/printf_core/printf_main.h
M libc/src/stdio/printf_core/ptr_converter.h
M libc/src/stdio/printf_core/strerror_converter.h
M libc/src/stdio/printf_core/string_converter.h
M libc/src/stdio/printf_core/vasprintf_internal.h
M libc/src/stdio/printf_core/vfprintf_internal.h
M libc/src/stdio/printf_core/write_int_converter.h
R libc/src/stdio/printf_core/writer.cpp
M libc/src/stdio/printf_core/writer.h
R libc/src/stdio/scanf.cpp
M libc/src/stdio/scanf_core/CMakeLists.txt
R libc/src/stdio/scanf_core/converter.cpp
M libc/src/stdio/scanf_core/converter.h
M libc/src/stdio/scanf_core/current_pos_converter.h
R libc/src/stdio/scanf_core/float_converter.cpp
M libc/src/stdio/scanf_core/float_converter.h
R libc/src/stdio/scanf_core/int_converter.cpp
M libc/src/stdio/scanf_core/int_converter.h
M libc/src/stdio/scanf_core/parser.h
R libc/src/stdio/scanf_core/ptr_converter.cpp
M libc/src/stdio/scanf_core/ptr_converter.h
M libc/src/stdio/scanf_core/reader.h
R libc/src/stdio/scanf_core/scanf_main.cpp
M libc/src/stdio/scanf_core/scanf_main.h
R libc/src/stdio/scanf_core/string_converter.cpp
M libc/src/stdio/scanf_core/string_converter.h
A libc/src/stdio/scanf_core/string_reader.h
M libc/src/stdio/scanf_core/vfscanf_internal.h
M libc/src/stdio/snprintf.cpp
M libc/src/stdio/sprintf.cpp
M libc/src/stdio/sscanf.cpp
R libc/src/stdio/vfscanf.cpp
R libc/src/stdio/vscanf.cpp
M libc/src/stdio/vsnprintf.cpp
M libc/src/stdio/vsprintf.cpp
M libc/src/stdio/vsscanf.cpp
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/a64l.cpp
A libc/src/stdlib/l64a.cpp
A libc/src/stdlib/l64a.h
M libc/src/stdlib/qsort_pivot.h
M libc/src/stdlib/quick_sort.h
M libc/src/stdlib/str_from_util.h
M libc/src/stdlib/strfromd.cpp
M libc/src/stdlib/strfromf.cpp
M libc/src/stdlib/strfroml.cpp
M libc/src/string/memory_utils/generic/byte_per_byte.h
M libc/src/string/memory_utils/inline_bcmp.h
M libc/src/string/memory_utils/inline_memcmp.h
M libc/src/string/memory_utils/inline_memcpy.h
M libc/src/string/memory_utils/inline_memmove.h
M libc/src/string/memory_utils/inline_memset.h
M libc/src/string/memory_utils/utils.h
M libc/src/string/string_utils.h
M libc/src/strings/CMakeLists.txt
A libc/src/strings/ffs.cpp
A libc/src/strings/ffs.h
A libc/src/strings/ffsl.cpp
A libc/src/strings/ffsl.h
A libc/src/strings/ffsll.cpp
A libc/src/strings/ffsll.h
A libc/src/strings/strcasecmp_l.cpp
A libc/src/strings/strcasecmp_l.h
A libc/src/strings/strncasecmp_l.cpp
A libc/src/strings/strncasecmp_l.h
M libc/src/time/mktime.cpp
M libc/src/time/strftime.cpp
M libc/src/time/strftime_core/CMakeLists.txt
M libc/src/time/strftime_core/composite_converter.h
R libc/src/time/strftime_core/converter.cpp
M libc/src/time/strftime_core/converter.h
M libc/src/time/strftime_core/num_converter.h
M libc/src/time/strftime_core/str_converter.h
R libc/src/time/strftime_core/strftime_main.cpp
M libc/src/time/strftime_core/strftime_main.h
M libc/src/time/strftime_l.cpp
M libc/src/time/time_utils.cpp
M libc/src/time/time_utils.h
M libc/startup/gpu/CMakeLists.txt
M libc/test/UnitTest/CMakeLists.txt
A libc/test/UnitTest/ErrnoCheckingTest.h
M libc/test/UnitTest/ErrnoSetterMatcher.h
M libc/test/UnitTest/ExecuteFunction.h
M libc/test/UnitTest/ExecuteFunctionUnix.cpp
M libc/test/UnitTest/LibcTest.cpp
M libc/test/UnitTest/MemoryMatcher.h
M libc/test/UnitTest/Test.h
M libc/test/UnitTest/ZxTest.h
M libc/test/integration/src/pthread/pthread_rwlock_test.cpp
M libc/test/integration/startup/gpu/rpc_stream_test.cpp
M libc/test/integration/startup/gpu/rpc_test.cpp
M libc/test/src/__support/CMakeLists.txt
M libc/test/src/__support/CPP/atomic_test.cpp
M libc/test/src/__support/CPP/bit_test.cpp
M libc/test/src/__support/HashTable/table_test.cpp
M libc/test/src/__support/arg_list_test.cpp
M libc/test/src/__support/big_int_test.cpp
M libc/test/src/__support/blockstore_test.cpp
M libc/test/src/__support/fixed_point/fx_bits_test.cpp
M libc/test/src/__support/fixedvector_test.cpp
M libc/test/src/__support/hash_test.cpp
M libc/test/src/__support/integer_to_string_test.cpp
M libc/test/src/__support/math_extras_test.cpp
M libc/test/src/__support/str_to_double_test.cpp
M libc/test/src/__support/str_to_float_test.cpp
M libc/test/src/__support/str_to_fp_test.h
M libc/test/src/complex/CImagTest.h
M libc/test/src/complex/CRealTest.h
M libc/test/src/fcntl/openat_test.cpp
M libc/test/src/locale/CMakeLists.txt
M libc/test/src/locale/locale_test.cpp
M libc/test/src/locale/localeconv_test.cpp
M libc/test/src/math/AddTest.h
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/CopySignTest.h
M libc/test/src/math/FMaxTest.h
M libc/test/src/math/FMinTest.h
M libc/test/src/math/FModTest.h
M libc/test/src/math/FmaTest.h
M libc/test/src/math/FrexpTest.h
M libc/test/src/math/NextAfterTest.h
M libc/test/src/math/SubTest.h
A libc/test/src/math/acoshf16_test.cpp
A libc/test/src/math/add_same_type_test.cpp
A libc/test/src/math/atan_test.cpp
M libc/test/src/math/exhaustive/exhaustive_test.h
M libc/test/src/math/exhaustive/fmod_generic_impl_test.cpp
M libc/test/src/math/exhaustive/hypotf_test.cpp
A libc/test/src/math/fmaf16_test.cpp
M libc/test/src/math/smoke/AddTest.h
M libc/test/src/math/smoke/CMakeLists.txt
M libc/test/src/math/smoke/FmaTest.h
M libc/test/src/math/smoke/NextAfterTest.h
M libc/test/src/math/smoke/NextTowardTest.h
M libc/test/src/math/smoke/SubTest.h
A libc/test/src/math/smoke/acoshf16_test.cpp
A libc/test/src/math/smoke/add_same_type_test.cpp
A libc/test/src/math/smoke/atan_test.cpp
A libc/test/src/math/smoke/fmaf16_test.cpp
M libc/test/src/math/smoke/sqrtf128_test.cpp
A libc/test/src/math/smoke/sub_same_type_test.cpp
A libc/test/src/math/sub_same_type_test.cpp
M libc/test/src/search/CMakeLists.txt
A libc/test/src/search/lsearch_test.cpp
M libc/test/src/stdbit/stdc_first_trailing_one_uc_test.cpp
M libc/test/src/stdbit/stdc_first_trailing_one_ui_test.cpp
M libc/test/src/stdbit/stdc_first_trailing_one_ul_test.cpp
M libc/test/src/stdbit/stdc_first_trailing_one_ull_test.cpp
M libc/test/src/stdbit/stdc_first_trailing_one_us_test.cpp
A libc/test/src/stdfix/BitsFxTest.h
M libc/test/src/stdfix/CMakeLists.txt
A libc/test/src/stdfix/bitshk_test.cpp
A libc/test/src/stdfix/bitshr_test.cpp
A libc/test/src/stdfix/bitsk_test.cpp
A libc/test/src/stdfix/bitslk_test.cpp
A libc/test/src/stdfix/bitslr_test.cpp
A libc/test/src/stdfix/bitsr_test.cpp
A libc/test/src/stdfix/bitsuhk_test.cpp
A libc/test/src/stdfix/bitsuhr_test.cpp
A libc/test/src/stdfix/bitsuk_test.cpp
A libc/test/src/stdfix/bitsulk_test.cpp
A libc/test/src/stdfix/bitsulr_test.cpp
A libc/test/src/stdfix/bitsur_test.cpp
A libc/test/src/stdfix/macros_test.cpp
M libc/test/src/stdio/fileop_test.cpp
M libc/test/src/stdio/printf_core/converter_test.cpp
M libc/test/src/stdio/printf_core/parser_test.cpp
M libc/test/src/stdio/printf_core/writer_test.cpp
M libc/test/src/stdio/scanf_core/CMakeLists.txt
M libc/test/src/stdio/scanf_core/converter_test.cpp
M libc/test/src/stdio/scanf_core/reader_test.cpp
M libc/test/src/stdio/sscanf_test.cpp
M libc/test/src/stdlib/CMakeLists.txt
M libc/test/src/stdlib/SortingTest.h
M libc/test/src/stdlib/StrfromTest.h
A libc/test/src/stdlib/l64a_test.cpp
M libc/test/src/string/memcpy_test.cpp
M libc/test/src/string/memmove_test.cpp
M libc/test/src/string/memory_utils/memory_check_utils.h
M libc/test/src/string/memory_utils/op_tests.cpp
M libc/test/src/string/memory_utils/utils_test.cpp
M libc/test/src/string/memset_test.cpp
M libc/test/src/strings/CMakeLists.txt
M libc/test/src/strings/bcopy_test.cpp
A libc/test/src/strings/ffs_test.cpp
A libc/test/src/strings/ffsl_test.cpp
A libc/test/src/strings/ffsll_test.cpp
A libc/test/src/strings/strcasecmp_l_test.cpp
A libc/test/src/strings/strncasecmp_l_test.cpp
M libc/test/src/sys/epoll/linux/CMakeLists.txt
M libc/test/src/sys/epoll/linux/epoll_create1_test.cpp
M libc/test/src/sys/epoll/linux/epoll_create_test.cpp
M libc/test/src/sys/epoll/linux/epoll_ctl_test.cpp
M libc/test/src/sys/epoll/linux/epoll_pwait2_test.cpp
M libc/test/src/sys/epoll/linux/epoll_pwait_test.cpp
M libc/test/src/sys/epoll/linux/epoll_wait_test.cpp
M libc/test/src/sys/random/linux/getrandom_test.cpp
M libc/test/src/sys/socket/linux/CMakeLists.txt
M libc/test/src/sys/socket/linux/bind_test.cpp
M libc/test/src/sys/socket/linux/send_recv_test.cpp
M libc/test/src/sys/socket/linux/sendmsg_recvmsg_test.cpp
M libc/test/src/sys/socket/linux/sendto_recvfrom_test.cpp
M libc/test/src/sys/socket/linux/socket_test.cpp
M libc/test/src/sys/socket/linux/socketpair_test.cpp
M libc/test/src/sys/uio/readv_test.cpp
M libc/test/src/sys/uio/writev_test.cpp
M libc/test/src/time/strftime_test.cpp
M libc/test/src/unistd/CMakeLists.txt
M libc/test/src/unistd/access_test.cpp
M libc/test/src/unistd/chdir_test.cpp
M libc/test/src/unistd/dup2_test.cpp
M libc/test/src/unistd/dup3_test.cpp
M libc/test/src/unistd/dup_test.cpp
M libc/test/src/unistd/fchdir_test.cpp
M libc/test/src/unistd/fpathconf_test.cpp
M libc/test/src/unistd/ftruncate_test.cpp
M libc/test/src/unistd/getentropy_test.cpp
M libc/test/src/unistd/getsid_test.cpp
M libc/test/src/unistd/isatty_test.cpp
M libc/test/src/unistd/link_test.cpp
M libc/test/src/unistd/linkat_test.cpp
M libc/test/src/unistd/lseek_test.cpp
M libc/test/src/unistd/pathconf_test.cpp
M libc/test/src/unistd/pipe2_test.cpp
M libc/test/src/unistd/pipe_test.cpp
M libc/test/src/unistd/pread_pwrite_test.cpp
M libc/test/src/unistd/read_write_test.cpp
M libc/test/src/unistd/readlink_test.cpp
M libc/test/src/unistd/readlinkat_test.cpp
M libc/test/src/unistd/rmdir_test.cpp
M libc/test/src/unistd/symlink_test.cpp
M libc/test/src/unistd/symlinkat_test.cpp
M libc/test/src/unistd/syscall_test.cpp
M libc/test/src/unistd/truncate_test.cpp
M libc/test/src/unistd/unlink_test.cpp
M libc/test/src/unistd/unlinkat_test.cpp
M libc/utils/MPCWrapper/CMakeLists.txt
M libc/utils/MPCWrapper/MPCUtils.cpp
M libc/utils/MPCWrapper/MPCUtils.h
A libc/utils/MPCWrapper/mpc_inc.h
M libc/utils/MPFRWrapper/MPCommon.cpp
M libc/utils/MPFRWrapper/MPFRUtils.cpp
A libc/utils/docgen/dirent.yaml
A libc/utils/docgen/glob.yaml
A libc/utils/docgen/sys/utsname.yaml
R libc/utils/gpu/CMakeLists.txt
R libc/utils/gpu/loader/CMakeLists.txt
R libc/utils/gpu/loader/Loader.h
R libc/utils/gpu/loader/Main.cpp
R libc/utils/gpu/loader/amdgpu/CMakeLists.txt
R libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
R libc/utils/gpu/loader/nvptx/CMakeLists.txt
R libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
R libc/utils/gpu/server/CMakeLists.txt
R libc/utils/gpu/server/rpc_server.cpp
R libc/utils/hdrgen/enumeration.py
R libc/utils/hdrgen/function.py
R libc/utils/hdrgen/gpu_headers.py
A libc/utils/hdrgen/hdrgen/__init__.py
A libc/utils/hdrgen/hdrgen/enumeration.py
A libc/utils/hdrgen/hdrgen/function.py
A libc/utils/hdrgen/hdrgen/gpu_headers.py
A libc/utils/hdrgen/hdrgen/header.py
A libc/utils/hdrgen/hdrgen/macro.py
A libc/utils/hdrgen/hdrgen/main.py
A libc/utils/hdrgen/hdrgen/object.py
A libc/utils/hdrgen/hdrgen/type.py
A libc/utils/hdrgen/hdrgen/yaml_functions_sorted.py
A libc/utils/hdrgen/hdrgen/yaml_to_classes.py
R libc/utils/hdrgen/header.py
R libc/utils/hdrgen/macro.py
M libc/utils/hdrgen/main.py
R libc/utils/hdrgen/object.py
R libc/utils/hdrgen/type.py
R libc/utils/hdrgen/yaml_functions_sorted.py
M libc/utils/hdrgen/yaml_to_classes.py
M libclc/CMakeLists.txt
M libclc/amdgcn-amdhsa/lib/workitem/get_global_size.cl
M libclc/amdgcn-amdhsa/lib/workitem/get_local_size.cl
M libclc/amdgcn-amdhsa/lib/workitem/get_num_groups.cl
M libclc/amdgcn/lib/SOURCES
M libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.ll
M libclc/amdgcn/lib/math/fmax.cl
M libclc/amdgcn/lib/math/fmin.cl
R libclc/amdgcn/lib/math/ldexp.cl
M libclc/amdgcn/lib/mem_fence/fence.cl
M libclc/amdgcn/lib/synchronization/barrier.cl
M libclc/amdgcn/lib/workitem/get_global_offset.cl
M libclc/amdgcn/lib/workitem/get_global_size.cl
M libclc/amdgcn/lib/workitem/get_group_id.cl
M libclc/amdgcn/lib/workitem/get_local_id.cl
M libclc/amdgcn/lib/workitem/get_local_size.cl
M libclc/amdgcn/lib/workitem/get_num_groups.cl
M libclc/amdgcn/lib/workitem/get_work_dim.cl
M libclc/amdgpu/lib/SOURCES
M libclc/amdgpu/lib/math/half_exp.cl
M libclc/amdgpu/lib/math/half_exp10.cl
M libclc/amdgpu/lib/math/half_exp2.cl
M libclc/amdgpu/lib/math/half_log.cl
M libclc/amdgpu/lib/math/half_log10.cl
M libclc/amdgpu/lib/math/half_log2.cl
M libclc/amdgpu/lib/math/half_native_unary.inc
M libclc/amdgpu/lib/math/half_recip.cl
M libclc/amdgpu/lib/math/half_rsqrt.cl
M libclc/amdgpu/lib/math/half_sqrt.cl
M libclc/amdgpu/lib/math/native_exp.cl
M libclc/amdgpu/lib/math/native_exp.inc
M libclc/amdgpu/lib/math/native_log.cl
M libclc/amdgpu/lib/math/native_log.inc
M libclc/amdgpu/lib/math/native_log10.cl
M libclc/amdgpu/lib/math/native_log10.inc
R libclc/amdgpu/lib/math/sqrt.cl
M libclc/amdgpu/lib/shared/vload_half_helpers.ll
M libclc/amdgpu/lib/shared/vstore_half_helpers.ll
M libclc/clc/include/clc/clc_as_type.h
M libclc/clc/include/clc/clc_convert.h
M libclc/clc/include/clc/clcfunc.h
M libclc/clc/include/clc/clcmacro.h
M libclc/clc/include/clc/clctypes.h
M libclc/clc/include/clc/common/clc_degrees.h
M libclc/clc/include/clc/common/clc_radians.h
M libclc/clc/include/clc/common/clc_sign.h
M libclc/clc/include/clc/common/clc_smoothstep.h
M libclc/clc/include/clc/common/clc_smoothstep.inc
M libclc/clc/include/clc/float/definitions.h
M libclc/clc/include/clc/geometric/clc_dot.h
M libclc/clc/include/clc/geometric/clc_dot.inc
M libclc/clc/include/clc/geometric/floatn.inc
M libclc/clc/include/clc/integer/clc_abs.h
M libclc/clc/include/clc/integer/clc_abs.inc
M libclc/clc/include/clc/integer/clc_abs_diff.h
M libclc/clc/include/clc/integer/clc_abs_diff.inc
M libclc/clc/include/clc/integer/clc_add_sat.h
M libclc/clc/include/clc/integer/clc_clz.h
M libclc/clc/include/clc/integer/clc_hadd.h
M libclc/clc/include/clc/integer/clc_mad24.h
M libclc/clc/include/clc/integer/clc_mad_hi.h
M libclc/clc/include/clc/integer/clc_mad_sat.h
M libclc/clc/include/clc/integer/clc_mul24.h
M libclc/clc/include/clc/integer/clc_mul_hi.h
M libclc/clc/include/clc/integer/clc_popcount.h
M libclc/clc/include/clc/integer/clc_rhadd.h
M libclc/clc/include/clc/integer/clc_rotate.h
M libclc/clc/include/clc/integer/clc_sub_sat.h
M libclc/clc/include/clc/integer/clc_upsample.h
M libclc/clc/include/clc/integer/definitions.h
M libclc/clc/include/clc/integer/gentype.inc
M libclc/clc/include/clc/integer/gentype24.inc
M libclc/clc/include/clc/internal/clc.h
M libclc/clc/include/clc/internal/math/clc_sw_fma.h
M libclc/clc/include/clc/math/binary_decl_with_scalar_second_arg.inc
A libclc/clc/include/clc/math/clc_acos.h
A libclc/clc/include/clc/math/clc_acospi.h
A libclc/clc/include/clc/math/clc_asin.h
A libclc/clc/include/clc/math/clc_asinpi.h
A libclc/clc/include/clc/math/clc_atan.h
A libclc/clc/include/clc/math/clc_atanpi.h
M libclc/clc/include/clc/math/clc_ceil.h
M libclc/clc/include/clc/math/clc_copysign.h
M libclc/clc/include/clc/math/clc_fabs.h
R runtimes/cmake/Modules/FindLibcCommonUtils.cmake
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.4
[skip ci]
Commit: d4370dce4e30e65c3416681f6e8dc2e499ba87ed
https://github.com/llvm/llvm-project/commit/d4370dce4e30e65c3416681f6e8dc2e499ba87ed
Author: Florian Mayer <fmayer at google.com>
Date: 2025-03-25 (Tue, 25 Mar 2025)
Changed paths:
M .ci/metrics/metrics.py
M .ci/metrics/requirements.lock.txt
M .ci/metrics/requirements.txt
M .ci/monolithic-linux.sh
M .github/workflows/build-ci-container.yml
M .github/workflows/build-metrics-container.yml
M .github/workflows/ci-post-commit-analyzer.yml
M .github/workflows/commit-access-greeter.yml
M .github/workflows/commit-access-review.yml
M .github/workflows/containers/github-action-ci/Dockerfile
M .github/workflows/docs.yml
M .github/workflows/email-check.yaml
M .github/workflows/issue-release-workflow.yml
M .github/workflows/issue-subscriber.yml
M .github/workflows/issue-write.yml
M .github/workflows/libc-fullbuild-tests.yml
M .github/workflows/libc-overlay-tests.yml
M .github/workflows/libclang-abi-tests.yml
M .github/workflows/libclang-python-tests.yml
M .github/workflows/libcxx-build-and-test.yaml
M .github/workflows/libcxx-build-containers.yml
M .github/workflows/libcxx-check-generated-files.yml
M .github/workflows/libcxx-restart-preempted-jobs.yaml
M .github/workflows/llvm-bugs.yml
M .github/workflows/llvm-project-tests.yml
M .github/workflows/llvm-tests.yml
M .github/workflows/merged-prs.yml
M .github/workflows/new-issues.yml
M .github/workflows/new-prs.yml
M .github/workflows/pr-code-format.yml
M .github/workflows/pr-request-release-note.yml
M .github/workflows/pr-subscriber.yml
M .github/workflows/release-asset-audit.py
M .github/workflows/release-asset-audit.yml
M .github/workflows/release-binaries-all.yml
M .github/workflows/release-binaries.yml
M .github/workflows/release-documentation.yml
M .github/workflows/release-doxygen.yml
M .github/workflows/release-lit.yml
M .github/workflows/release-sources.yml
M .github/workflows/release-tasks.yml
M .github/workflows/scorecard.yml
M .github/workflows/version-check.yml
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/BinarySection.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Core/Relocation.h
R bolt/include/bolt/Passes/ContinuityStats.h
R bolt/include/bolt/Passes/NonPacProtectedRetAnalysis.h
A bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/include/bolt/Passes/PatchEntries.h
A bolt/include/bolt/Passes/ProfileQualityStats.h
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryData.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/JumpTable.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Core/Relocation.cpp
M bolt/lib/Passes/ADRRelaxationPass.cpp
M bolt/lib/Passes/Aligner.cpp
M bolt/lib/Passes/AsmDump.cpp
M bolt/lib/Passes/CMakeLists.txt
R bolt/lib/Passes/ContinuityStats.cpp
M bolt/lib/Passes/FrameOptimizer.cpp
M bolt/lib/Passes/Instrumentation.cpp
R bolt/lib/Passes/NonPacProtectedRetAnalysis.cpp
A bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Passes/PLTCall.cpp
M bolt/lib/Passes/PatchEntries.cpp
A bolt/lib/Passes/ProfileQualityStats.cpp
M bolt/lib/Passes/RetpolineInsertion.cpp
M bolt/lib/Passes/StokeInfo.cpp
M bolt/lib/Passes/TailDuplication.cpp
M bolt/lib/Profile/StaleProfileMatching.cpp
M bolt/lib/Profile/YAMLProfileReader.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
A bolt/lib/Target/AArch64/AArch64MCSymbolizer.cpp
A bolt/lib/Target/AArch64/AArch64MCSymbolizer.h
M bolt/lib/Target/AArch64/CMakeLists.txt
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
M bolt/lib/Utils/CommandLineOpts.cpp
M bolt/runtime/hugify.cpp
A bolt/test/AArch64/computed-goto.s
A bolt/test/AArch64/got-load-symbolization.s
M bolt/test/AArch64/test-indirect-branch.s
A bolt/test/Inputs/indirect_goto.c
M bolt/test/X86/Inputs/define_bar.s
R bolt/test/X86/Inputs/indirect_goto.c
R bolt/test/X86/cfg-discontinuity-reporting.test
M bolt/test/X86/icf-safe-icp.test
M bolt/test/X86/icf-safe-process-rela-data.test
M bolt/test/X86/icf-safe-test1.test
M bolt/test/X86/icf-safe-test2GlobalConstPtrNoPic.test
R bolt/test/X86/indirect-goto-pie.test
M bolt/test/X86/indirect-goto.test
A bolt/test/X86/profile-quality-reporting.test
A bolt/test/avoid-wx-segment.c
M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
M bolt/test/binary-analysis/AArch64/gs-pacret-multi-bb.s
A bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
A bolt/test/indirect-goto-relocs.test
M bolt/tools/bat-dump/bat-dump.cpp
M bolt/tools/driver/llvm-bolt.cpp
M bolt/tools/merge-fdata/merge-fdata.cpp
M bolt/utils/docker/Dockerfile
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/assets/index.js
M clang-tools-extra/clang-move/Move.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.h
M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/UnintendedCharOstreamOutputCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/UnintendedCharOstreamOutputCheck.h
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdNumbersCheck.cpp
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
A clang-tools-extra/clang-tidy/readability/AmbiguousSmartptrResetCallCheck.cpp
A clang-tools-extra/clang-tidy/readability/AmbiguousSmartptrResetCallCheck.h
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/CodeComplete.h
M clang-tools-extra/clangd/Config.h
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/ConfigFragment.h
M clang-tools-extra/clangd/ConfigYAML.cpp
M clang-tools-extra/clangd/HeaderSourceSwitch.cpp
M clang-tools-extra/clangd/IncludeFixer.cpp
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/Preamble.cpp
M clang-tools-extra/clangd/ProjectModules.h
M clang-tools-extra/clangd/ScanningProjectModules.cpp
M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
M clang-tools-extra/clangd/TidyProvider.cpp
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/clangd/refactor/Rename.cpp
M clang-tools-extra/clangd/refactor/Rename.h
M clang-tools-extra/clangd/refactor/tweaks/AnnotateHighlightings.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang-tools-extra/clangd/unittests/HeaderSourceSwitchTests.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
M clang-tools-extra/clangd/unittests/RenameTests.cpp
M clang-tools-extra/clangd/unittests/StdLibTests.cpp
M clang-tools-extra/clangd/unittests/TestIndex.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/Contributing.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/capturing-this-in-member-variable.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-optional-access.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/unintended-char-ostream-output.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/const-correctness.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-starts-ends-with.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-value-param.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.rst
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang-tools-extra/modularize/ModularizeUtilities.h
M clang-tools-extra/modularize/ModuleAssistant.cpp
A clang-tools-extra/test/clang-doc/DR-131697.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Calculator.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Circle.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Rectangle.cpp
M clang-tools-extra/test/clang-doc/basic-project.test
M clang-tools-extra/test/clang-doc/enum.cpp
M clang-tools-extra/test/clang-doc/namespace.cpp
M clang-tools-extra/test/clang-doc/single-file-public.cpp
M clang-tools-extra/test/clang-doc/single-file.cpp
M clang-tools-extra/test/clang-doc/templates.cpp
M clang-tools-extra/test/clang-doc/test-path-abs.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/capturing-this-in-member-variable.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/optional-value-conversion-construct-from-std.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unintended-char-ostream-output-cast-type.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unintended-char-ostream-output.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-allowed-types.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers-values.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-transform-pointer-as-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-transform-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values-before-cxx23.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-wrong-config.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-macro.hpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-numbers.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/ambiguous-smartptr-reset-call-custom-pointers.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/ambiguous-smartptr-reset-call.cpp
A clang/AreaTeamMembers.txt
M clang/Maintainers.rst
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_cdb.py
M clang/bindings/python/tests/cindex/test_cursor.py
M clang/bindings/python/tests/cindex/test_index.py
M clang/bindings/python/tests/cindex/test_location.py
M clang/bindings/python/tests/cindex/test_translation_unit.py
M clang/bindings/python/tests/cindex/test_type.py
M clang/cmake/caches/BOLT.cmake
M clang/cmake/caches/Release.cmake
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ClangOffloadBundler.rst
M clang/docs/CommandGuide/clang.rst
M clang/docs/HIPSupport.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/LibASTMatchersReference.html
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/ThreadSafetyAnalysis.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/docs/UsersManual.rst
M clang/docs/analyzer/checkers.rst
M clang/docs/analyzer/developer-docs.rst
A clang/docs/analyzer/developer-docs/Statistics.rst
M clang/docs/tools/dump_ast_matchers.py
M clang/include/clang-c/Index.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/Attr.h
M clang/include/clang/AST/AttrIterator.h
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclID.h
A clang/include/clang/AST/DeclOpenACC.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/DeclVisitor.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/JSONNodeDumper.h
M clang/include/clang/AST/Mangle.h
M clang/include/clang/AST/NestedNameSpecifier.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Stmt.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/Analysis/Analyses/ThreadSafety.h
M clang/include/clang/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.h
M clang/include/clang/Analysis/FlowSensitive/SmartPointerAccessorCaching.h
M clang/include/clang/Analysis/ProgramPoint.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
A clang/include/clang/Basic/BuiltinTemplates.td
M clang/include/clang/Basic/Builtins.h
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/include/clang/Basic/BuiltinsX86.td
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/DeclNodes.td
M clang/include/clang/Basic/Diagnostic.td
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticOptions.h
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/FileManager.h
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Basic/Module.h
M clang/include/clang/Basic/ObjCRuntime.h
M clang/include/clang/Basic/OpenACCClauses.def
M clang/include/clang/Basic/OpenMPKinds.def
M clang/include/clang/Basic/OpenMPKinds.h
M clang/include/clang/Basic/Sanitizers.def
M clang/include/clang/Basic/Specifiers.h
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/TargetOptions.h
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Basic/arm_mve.td
M clang/include/clang/Basic/arm_mve_defs.td
M clang/include/clang/Basic/arm_sve.td
M clang/include/clang/Basic/riscv_vector.td
M clang/include/clang/CIR/CIRGenerator.h
A clang/include/clang/CIR/CIRToCIRPasses.h
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/CMakeLists.txt
R clang/include/clang/CIR/Dialect/IR/CIRAttrVisitor.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/include/clang/CIR/Dialect/IR/CIROpsEnums.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/include/clang/CIR/Dialect/IR/CMakeLists.txt
A clang/include/clang/CIR/Dialect/Passes.h
A clang/include/clang/CIR/Dialect/Passes.td
A clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.h
A clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.td
A clang/include/clang/CIR/Interfaces/CIROpInterfaces.h
A clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
M clang/include/clang/CIR/Interfaces/CMakeLists.txt
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Driver/Action.h
M clang/include/clang/Driver/OffloadBundler.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/ToolChain.h
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/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Frontend/VerifyDiagnosticConsumer.h
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Lex/HeaderSearchOptions.h
M clang/include/clang/Lex/Lexer.h
M clang/include/clang/Lex/LiteralSupport.h
M clang/include/clang/Lex/ModuleMap.h
A clang/include/clang/Lex/ModuleMapFile.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/HLSLExternalSemaSource.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/ParsedAttr.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaBase.h
M clang/include/clang/Sema/SemaCodeCompletion.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTRecordReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/include/clang/Serialization/ASTWriter.h
A clang/include/clang/Serialization/ModuleCache.h
M clang/include/clang/Serialization/ModuleManager.h
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h
M clang/include/clang/StaticAnalyzer/Core/Checker.h
M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
A clang/include/clang/StaticAnalyzer/Core/PathSensitive/EntryPointStats.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h
M clang/include/clang/Support/Compiler.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
A clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.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/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Descriptor.h
M clang/lib/AST/ByteCode/DynamicAllocator.cpp
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Program.h
M clang/lib/AST/CMakeLists.txt
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclBase.cpp
A clang/lib/AST/DeclOpenACC.cpp
M clang/lib/AST/DeclPrinter.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/NestedNameSpecifier.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/ParentMapContext.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/AST/Stmt.cpp
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/ASTMatchers/ASTMatchFinder.cpp
M clang/lib/Analysis/CFG.cpp
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/FlowSensitive/SmartPointerAccessorCaching.cpp
M clang/lib/Analysis/ThreadSafety.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Basic/Attributes.cpp
M clang/lib/Basic/Builtins.cpp
M clang/lib/Basic/FileManager.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/BPF.cpp
M clang/lib/Basic/Targets/Mips.cpp
M clang/lib/Basic/Targets/OSTargets.cpp
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/SPIR.h
M clang/lib/CIR/CMakeLists.txt
A clang/lib/CIR/CodeGen/Address.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
A clang/lib/CIR/CodeGen/CIRGenCall.h
A clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
A clang/lib/CIR/CodeGen/CIRGenDecl.cpp
A clang/lib/CIR/CodeGen/CIRGenExpr.cpp
A clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
A clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/lib/CIR/CodeGen/CIRGenerator.cpp
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/Dialect/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
A clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/IR/CMakeLists.txt
A clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
A clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
A clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
A clang/lib/CIR/Dialect/Transforms/PassDetail.h
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CIR/FrontendAction/CMakeLists.txt
A clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
A clang/lib/CIR/Interfaces/CIROpInterfaces.cpp
M clang/lib/CIR/Interfaces/CMakeLists.txt
A clang/lib/CIR/Lowering/CIRPasses.cpp
M clang/lib/CIR/Lowering/CMakeLists.txt
M clang/lib/CIR/Lowering/DirectToLLVM/CMakeLists.txt
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
A clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVMIR.cpp
M clang/lib/CodeGen/ABIInfoImpl.cpp
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
A clang/lib/CodeGen/CGBuiltin.h
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGCoroutine.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.h
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CGVTables.h
M clang/lib/CodeGen/CMakeLists.txt
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/ModuleBuilder.cpp
M clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
A clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
A clang/lib/CodeGen/TargetBuiltins/ARM.cpp
A clang/lib/CodeGen/TargetBuiltins/Hexagon.cpp
A clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
A clang/lib/CodeGen/TargetBuiltins/PPC.cpp
A clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
A clang/lib/CodeGen/TargetBuiltins/SPIR.cpp
A clang/lib/CodeGen/TargetBuiltins/SystemZ.cpp
A clang/lib/CodeGen/TargetBuiltins/WebAssembly.cpp
A clang/lib/CodeGen/TargetBuiltins/X86.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/CodeGen/Targets/AVR.cpp
M clang/lib/CodeGen/Targets/DirectX.cpp
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/CodeGen/Targets/TCE.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/CodeGen/VarBypassDetector.cpp
M clang/lib/CodeGen/VarBypassDetector.h
M clang/lib/Driver/Action.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/Multilib.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/AMDGPU.h
M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
M clang/lib/Driver/ToolChains/Arch/AArch64.h
M clang/lib/Driver/ToolChains/Arch/ARM.cpp
M clang/lib/Driver/ToolChains/Arch/Mips.cpp
M clang/lib/Driver/ToolChains/Arch/PPC.cpp
M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/HIPUtility.cpp
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Driver/ToolChains/HLSL.h
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/Haiku.h
M clang/lib/Driver/ToolChains/Hexagon.cpp
M clang/lib/Driver/ToolChains/OHOS.cpp
M clang/lib/Driver/ToolChains/SPIRV.cpp
M clang/lib/Driver/ToolChains/SPIRV.h
M clang/lib/Driver/ToolChains/SYCL.cpp
M clang/lib/Driver/ToolChains/WebAssembly.cpp
M clang/lib/Driver/Types.cpp
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Frontend/PrecompiledPreamble.cpp
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/__clang_hip_libdevice_declares.h
M clang/lib/Headers/__clang_hip_math.h
M clang/lib/Headers/__clang_hip_runtime_wrapper.h
M clang/lib/Headers/__stdarg_va_arg.h
M clang/lib/Headers/amdgpuintrin.h
M clang/lib/Headers/avx10_2_512convertintrin.h
M clang/lib/Headers/avx10_2_512satcvtdsintrin.h
M clang/lib/Headers/avx10_2_512satcvtintrin.h
M clang/lib/Headers/avx10_2convertintrin.h
M clang/lib/Headers/avx10_2minmaxintrin.h
M clang/lib/Headers/avx10_2niintrin.h
M clang/lib/Headers/avx10_2satcvtdsintrin.h
M clang/lib/Headers/avx10_2satcvtintrin.h
M clang/lib/Headers/gpuintrin.h
M clang/lib/Headers/hlsl.h
A clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
A clang/lib/Headers/hlsl/hlsl_compat_overloads.h
M clang/lib/Headers/hlsl/hlsl_detail.h
A clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/nvptxintrin.h
M clang/lib/Headers/opencl-c.h
M clang/lib/Headers/vecintrin.h
M clang/lib/Interpreter/IncrementalParser.cpp
M clang/lib/Interpreter/Wasm.cpp
M clang/lib/Lex/CMakeLists.txt
M clang/lib/Lex/HeaderMap.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/Lexer.cpp
M clang/lib/Lex/LiteralSupport.cpp
M clang/lib/Lex/ModuleMap.cpp
A clang/lib/Lex/ModuleMapFile.cpp
M clang/lib/Lex/PPExpressions.cpp
M clang/lib/Lex/PPMacroExpansion.cpp
M clang/lib/Lex/Pragma.cpp
M clang/lib/Parse/ParseCXXInlineMethods.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseHLSL.cpp
M clang/lib/Parse/ParseInit.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/ParseStmtAsm.cpp
M clang/lib/Parse/ParseTemplate.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/CMakeLists.txt
A clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
A clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/HeuristicResolver.cpp
M clang/lib/Sema/ParsedAttr.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaBase.cpp
M clang/lib/Sema/SemaCUDA.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaRISCV.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaStmtAsm.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/SemaX86.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTCommon.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderInternals.h
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/Serialization/CMakeLists.txt
M clang/lib/Serialization/GeneratePCH.cpp
M clang/lib/Serialization/GlobalModuleIndex.cpp
A clang/lib/Serialization/ModuleCache.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/Serialization/MultiOnDiskHashTable.h
M clang/lib/Serialization/TemplateArgumentHasher.cpp
M clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp
A clang/lib/StaticAnalyzer/Checkers/AssumeModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
M clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MismatchedIteratorChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/ReturnValueChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
A clang/lib/StaticAnalyzer/Checkers/WebKit/ForwardDeclChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
A clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLambdaCapturesChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
A clang/lib/StaticAnalyzer/Checkers/WebKit/RetainPtrCtorAdoptChecker.cpp
R clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLambdaCapturesChecker.cpp
M clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
M clang/lib/StaticAnalyzer/Core/CMakeLists.txt
M clang/lib/StaticAnalyzer/Core/Checker.cpp
M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
A clang/lib/StaticAnalyzer/Core/EntryPointStats.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/WorkList.cpp
M clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
M clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
M clang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp
M clang/lib/StaticAnalyzer/Frontend/CreateCheckerManager.cpp
M clang/lib/Testing/CMakeLists.txt
M clang/lib/Tooling/DependencyScanning/CMakeLists.txt
M clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
A clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
M clang/lib/Tooling/RefactoringCallbacks.cpp
M clang/test/AST/ByteCode/builtin-constant-p.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/ByteCode/c.c
M clang/test/AST/ByteCode/cxx20.cpp
M clang/test/AST/ByteCode/floats.cpp
M clang/test/AST/ByteCode/functions.cpp
M clang/test/AST/ByteCode/if.cpp
A clang/test/AST/ByteCode/libcxx/deref-to-array.cpp
A clang/test/AST/ByteCode/libcxx/make_unique.cpp
A clang/test/AST/ByteCode/libcxx/memcmp-pointer.cpp
M clang/test/AST/ByteCode/literals.cpp
M clang/test/AST/ByteCode/memberpointers.cpp
M clang/test/AST/ByteCode/new-delete.cpp
M clang/test/AST/ByteCode/placement-new.cpp
M clang/test/AST/ByteCode/records.cpp
M clang/test/AST/ByteCode/references.cpp
M clang/test/AST/ByteCode/unions.cpp
M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
M clang/test/AST/HLSL/HLSLControlFlowHint.hlsl
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
M clang/test/AST/HLSL/ast-dump-comment-cbuffer.hlsl
M clang/test/AST/HLSL/cbuffer.hlsl
M clang/test/AST/HLSL/cbuffer_and_namespaces.hlsl
A clang/test/AST/HLSL/default_cbuffer.hlsl
M clang/test/AST/HLSL/is_structured_resource_element_compatible_concept.hlsl
M clang/test/AST/HLSL/is_typed_resource_element_compatible_concept.hlsl
M clang/test/AST/HLSL/packoffset.hlsl
M clang/test/AST/HLSL/pch_hlsl_buffer.hlsl
M clang/test/AST/HLSL/resource_binding_attr.hlsl
M clang/test/AST/HLSL/vector-alias.hlsl
M clang/test/AST/HLSL/vector-constructors.hlsl
A clang/test/AST/ast-dump-atomic-options.hip
M clang/test/AST/ast-dump-cxx2b-deducing-this.cpp
M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
M clang/test/AST/ast-dump-templates.cpp
M clang/test/AST/ast-dump-types-json.cpp
A clang/test/AST/ast-print-openacc-cache-construct.cpp
A clang/test/AST/ast-print-openacc-declare-construct.cpp
A clang/test/AST/ast-print-openacc-routine-construct.cpp
M clang/test/AST/attr-print-emit.cpp
A clang/test/AST/cc-modifier.cpp
A clang/test/Analysis/ArrayBound/assumption-reporting.c
A clang/test/Analysis/ArrayBound/assumptions.c
A clang/test/Analysis/ArrayBound/brief-tests.c
A clang/test/Analysis/ArrayBound/cplusplus.cpp
A clang/test/Analysis/ArrayBound/verbose-tests.c
A clang/test/Analysis/Checkers/WebKit/binding-to-refptr.cpp
M clang/test/Analysis/Checkers/WebKit/call-args.cpp
A clang/test/Analysis/Checkers/WebKit/forward-decl-checker.mm
M clang/test/Analysis/Checkers/WebKit/mock-system-header.h
M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
A clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use-arc.mm
A clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use.mm
M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures-decl-protects-this-crash.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-members.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.mm
A clang/test/Analysis/Checkers/WebKit/unretained-call-args-arc.mm
A clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
A clang/test/Analysis/Checkers/WebKit/unretained-lambda-captures-arc.mm
A clang/test/Analysis/Checkers/WebKit/unretained-lambda-captures.mm
A clang/test/Analysis/Checkers/WebKit/unretained-members-arc.mm
A clang/test/Analysis/Checkers/WebKit/unretained-members.mm
M clang/test/Analysis/Inputs/expected-plists/edges-new.mm.plist
M clang/test/Analysis/Inputs/expected-plists/plist-output.m.plist
M clang/test/Analysis/Inputs/system-header-simulator-cxx.h
M clang/test/Analysis/a_flaky_crash.cpp
M clang/test/Analysis/analysis-after-multiple-dtors.cpp
M clang/test/Analysis/analyzer-config.c
M clang/test/Analysis/analyzer-enabled-checkers.c
A clang/test/Analysis/analyzer-stats/entry-point-stats.cpp
M clang/test/Analysis/array-init-loop.cpp
M clang/test/Analysis/array-punned-region.c
A clang/test/Analysis/builtin_assume.cpp
M clang/test/Analysis/builtin_overflow_notes.c
M clang/test/Analysis/call-invalidation.cpp
M clang/test/Analysis/cast-value-notes.cpp
M clang/test/Analysis/concrete-address.c
A clang/test/Analysis/csv2json.py
M clang/test/Analysis/ctor-array.cpp
M clang/test/Analysis/ctor.mm
M clang/test/Analysis/cxx-uninitialized-object-ptr-ref.cpp
A clang/test/Analysis/cxx23-assume-attribute.cpp
M clang/test/Analysis/diagnostics/no-store-func-path-notes.m
A clang/test/Analysis/fixed-address-notes.c
M clang/test/Analysis/fread.c
M clang/test/Analysis/implicit-ctor-undef-value.cpp
M clang/test/Analysis/initialization.c
M clang/test/Analysis/initialization.cpp
M clang/test/Analysis/initializer.cpp
M clang/test/Analysis/invalidated-iterator.cpp
M clang/test/Analysis/kmalloc-linux.c
M clang/test/Analysis/malloc-annotations.c
M clang/test/Analysis/malloc.c
M clang/test/Analysis/misc-ps.c
M clang/test/Analysis/misc-ps.m
M clang/test/Analysis/mismatched-iterator.cpp
A clang/test/Analysis/new-user-defined.cpp
M clang/test/Analysis/operator-calls.cpp
R clang/test/Analysis/out-of-bounds-constraint-check.c
R clang/test/Analysis/out-of-bounds-diagnostics.c
R clang/test/Analysis/out-of-bounds-new.cpp
R clang/test/Analysis/out-of-bounds-notes.c
R clang/test/Analysis/out-of-bounds.c
R clang/test/Analysis/outofbound-notwork.c
R clang/test/Analysis/outofbound.c
M clang/test/Analysis/region-store.cpp
M clang/test/Analysis/stack-addr-ps.cpp
M clang/test/Analysis/std-c-library-functions-POSIX.c
M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
A clang/test/Analysis/suppress-dereferences-from-any-address-space.c
M clang/test/Analysis/undef-buffers.c
M clang/test/Analysis/uninit-const.c
M clang/test/Analysis/uninit-const.cpp
M clang/test/Analysis/uninit-structured-binding-array.cpp
M clang/test/Analysis/uninit-structured-binding-struct.cpp
M clang/test/Analysis/uninit-structured-binding-tuple.cpp
M clang/test/Analysis/uninit-vals.m
M clang/test/Analysis/virtualcall.cpp
M clang/test/Analysis/zero-size-non-pod-array.cpp
M clang/test/C/C23/n2819.c
M clang/test/C/C23/n2975.c
A clang/test/C/C2y/n3347.c
A clang/test/C/C2y/n3353.c
A clang/test/C/C2y/n3363.c
A clang/test/C/C2y/n3409.c
A clang/test/C/C2y/n3410.c
A clang/test/C/C2y/n3411.c
A clang/test/C/C2y/n3451.c
A clang/test/C/C2y/n3460.c
A clang/test/C/C2y/n3460_1.c
A clang/test/C/C2y/n3478.c
A clang/test/C/C2y/n3481.c
A clang/test/C/C2y/n3482.c
A clang/test/C/C2y/n3496.c
A clang/test/C/C2y/n3505.c
A clang/test/CIR/CodeGen/array.cpp
A clang/test/CIR/CodeGen/basic.c
A clang/test/CIR/CodeGen/basic.cpp
A clang/test/CIR/CodeGen/cast.cpp
A clang/test/CIR/CodeGen/local-vars.cpp
A clang/test/CIR/CodeGen/loop.cpp
A clang/test/CIR/CodeGen/unary-expr-or-type-trait.cpp
A clang/test/CIR/CodeGen/unary.cpp
A clang/test/CIR/IR/array.cir
A clang/test/CIR/IR/cast.cir
M clang/test/CIR/IR/func.cir
A clang/test/CIR/IR/global-var-linkage.cir
M clang/test/CIR/IR/global.cir
A clang/test/CIR/Lowering/array.cpp
A clang/test/CIR/Lowering/basic.cpp
A clang/test/CIR/Lowering/cast.cir
A clang/test/CIR/Lowering/func-simple.cpp
M clang/test/CIR/Lowering/global-var-simple.cpp
A clang/test/CIR/Lowering/local-vars.cpp
A clang/test/CIR/Lowering/unary-expr-or-type-trait.cpp
A clang/test/CIR/Tools/cir-translate-triple.cir
A clang/test/CIR/Tools/has-triple-and-data-layout.cir
A clang/test/CIR/Tools/has-triple-no-data-layout.cir
A clang/test/CIR/Tools/invalid-translate-triple.cir
A clang/test/CIR/Tools/no-triple-has-data-layout.cir
A clang/test/CIR/Tools/no-triple-no-data-layout.cir
A clang/test/CIR/Tools/warn-default-triple.cir
A clang/test/CIR/Transforms/canonicalize.cir
A clang/test/CIR/Transforms/loop.cir
A clang/test/CIR/Transforms/scope.cir
M clang/test/CIR/func-simple.cpp
A clang/test/CIR/global-var-linkage.cpp
M clang/test/CIR/global-var-simple.cpp
A clang/test/CIR/mlirargs.c
A clang/test/CIR/mlprint.c
M clang/test/CMakeLists.txt
M clang/test/CXX/basic/basic.lookup/basic.lookup.qual/class.qual/p2.cpp
M clang/test/CXX/class.access/class.access.dcl/p1.cpp
M clang/test/CXX/class.access/class.friend/p3-cxx0x.cpp
M clang/test/CXX/class.access/class.friend/p6.cpp
M clang/test/CXX/class.access/p6.cpp
M clang/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p3.cpp
M clang/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p4.cpp
M clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.deprecated/p1.cpp
M clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.nodiscard/p2.cpp
M clang/test/CXX/dcl.decl/dcl.init/dcl.init.general/p16-cxx20.cpp
M clang/test/CXX/dcl.decl/dcl.meaning/p1-0x.cpp
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg18xx.cpp
M clang/test/CXX/drs/cwg19xx.cpp
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg22xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg28xx.cpp
M clang/test/CXX/drs/cwg29xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg3xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/drs/cwg6xx.cpp
A clang/test/CXX/drs/cwg787.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/special/class.inhctor/elsewhere.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p5.cpp
M clang/test/CXX/temp/temp.pre/p6.cpp
M clang/test/CXX/temp/temp.res/temp.dep/p3.cpp
M clang/test/CXX/temp/temp.res/temp.local/p6.cpp
M clang/test/ClangScanDeps/modules-context-hash-cwd.c
A clang/test/ClangScanDeps/modules-debug-dir.c
A clang/test/ClangScanDeps/modules-in-stable-dirs.c
A clang/test/ClangScanDeps/prebuilt-modules-in-stable-dirs.c
A clang/test/CodeCompletion/GH125500.cpp
A clang/test/CodeCompletion/if-const.cpp
A clang/test/CodeGen/AArch64/fmv-detection.c
M clang/test/CodeGen/AArch64/fmv-mix-explicit-implicit-default.c
M clang/test/CodeGen/AArch64/fmv-resolver-emission.c
A clang/test/CodeGen/AArch64/fp8-init-list.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fdot.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fmla.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnt1.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st1.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_stnt1.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef4.c
M clang/test/CodeGen/AArch64/sve-vector-bits-codegen.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_loads.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/AMDGPU/amdgpu-atomic-float.c
M clang/test/CodeGen/PowerPC/builtins-ppc-p9vector.c
A clang/test/CodeGen/RISCV/pr129995.cc
M clang/test/CodeGen/RISCV/riscv-func-attr-target.c
M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.c
M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.cpp
M clang/test/CodeGen/RISCV/riscv-vector-callingconv.c
M clang/test/CodeGen/RISCV/riscv-vector-callingconv.cpp
M clang/test/CodeGen/X86/avx10_2_512convert-builtins.c
M clang/test/CodeGen/X86/avx10_2_512minmax-error.c
R clang/test/CodeGen/X86/avx10_2_512satcvt-builtins-error.c
M clang/test/CodeGen/X86/avx10_2_512satcvt-builtins.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins.c
M clang/test/CodeGen/X86/avx10_2convert-builtins.c
M clang/test/CodeGen/X86/avx10_2minmax-builtins.c
M clang/test/CodeGen/X86/avx10_2ni-builtins.c
M clang/test/CodeGen/X86/avx10_2satcvt-builtins.c
R clang/test/CodeGen/X86/avx10_2satcvtds-builtins-errors.c
M clang/test/CodeGen/X86/avx10_2satcvtds-builtins-x64.c
M clang/test/CodeGen/X86/avx10_2satcvtds-builtins.c
M clang/test/CodeGen/X86/math-builtins.c
A clang/test/CodeGen/aarch64-execute-only.c
M clang/test/CodeGen/aix-builtin-mapping.c
M clang/test/CodeGen/allow-ubsan-check.c
M clang/test/CodeGen/amdgpu-address-spaces.cpp
M clang/test/CodeGen/arm-mfp8.c
M clang/test/CodeGen/arm-mve-intrinsics/admin.c
A clang/test/CodeGen/arm-neon-endianness.c
M clang/test/CodeGen/asm.c
M clang/test/CodeGen/assignment-tracking/assignment-tracking.cpp
M clang/test/CodeGen/assignment-tracking/memcpy-fragment.cpp
M clang/test/CodeGen/attr-counted-by.c
A clang/test/CodeGen/attr-malloc.c
M clang/test/CodeGen/attr-target-clones-riscv.c
M clang/test/CodeGen/attr-target-version-riscv.c
R clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGen/avr/argument.c
M clang/test/CodeGen/builtin-attributes.c
M clang/test/CodeGen/builtin-constant-p.c
M clang/test/CodeGen/builtins-elementwise-math.c
A clang/test/CodeGen/cx-complex-range-real.c
M clang/test/CodeGen/cx-complex-range.c
A clang/test/CodeGen/excess-embed-data.c
M clang/test/CodeGen/fake-use-determinism.c
M clang/test/CodeGen/fat-lto-objects-cfi.cpp
M clang/test/CodeGen/math-builtins-long.c
M clang/test/CodeGen/math-libcalls.c
A clang/test/CodeGen/openacc-noop-decl.c
A clang/test/CodeGen/p0963r3.cpp
M clang/test/CodeGen/partial-reinitialization2.c
A clang/test/CodeGen/strictfp-elementwise-builtins.cpp
R clang/test/CodeGen/strictfp-elementwise-bulitins.cpp
M clang/test/CodeGen/varargs.c
M clang/test/CodeGen/vector.c
A clang/test/CodeGen/win-fp128.c
M clang/test/CodeGenCUDA/amdgpu-atomic-ops.cu
M clang/test/CodeGenCUDA/amdgpu-bf16.cu
M clang/test/CodeGenCUDA/amdgpu-code-object-version.cu
M clang/test/CodeGenCUDA/atomic-ops.cu
A clang/test/CodeGenCUDA/atomic-options.hip
M clang/test/CodeGenCUDA/launch-bounds.cu
M clang/test/CodeGenCUDASPIRV/spirv-attrs.cu
M clang/test/CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp
M clang/test/CodeGenCXX/RelativeVTablesABI/type-info.cpp
M clang/test/CodeGenCXX/attr-target-clones-riscv.cpp
M clang/test/CodeGenCXX/attr-target-version-riscv.cpp
M clang/test/CodeGenCXX/builtin-amdgcn-atomic-inc-dec.cpp
M clang/test/CodeGenCXX/builtin-constant-p.cpp
M clang/test/CodeGenCXX/builtins.cpp
A clang/test/CodeGenCXX/cxx23-p2280r4.cpp
M clang/test/CodeGenCXX/derived-to-base.cpp
M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
M clang/test/CodeGenCXX/function-template-specialization.cpp
A clang/test/CodeGenCXX/gnu-asm-constexpr.cpp
M clang/test/CodeGenCXX/mangle.cpp
A clang/test/CodeGenCXX/sret_cast_with_nonzero_alloca_as.cpp
M clang/test/CodeGenCXX/type-metadata.cpp
M clang/test/CodeGenCXX/wasm-eh.cpp
A clang/test/CodeGenCXX/wasm-em-eh.cpp
M clang/test/CodeGenCoroutines/coro-params.cpp
M clang/test/CodeGenHIP/default-attributes.hip
M clang/test/CodeGenHLSL/BasicFeatures/standard_conversion_sequences.hlsl
A clang/test/CodeGenHLSL/BoolVector.hlsl
M clang/test/CodeGenHLSL/basic_types.hlsl
A clang/test/CodeGenHLSL/builtins/AddUint64.hlsl
M clang/test/CodeGenHLSL/builtins/ByteAddressBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor-opt.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/abs.hlsl
A clang/test/CodeGenHLSL/builtins/asint16.hlsl
A clang/test/CodeGenHLSL/builtins/asuint16.hlsl
M clang/test/CodeGenHLSL/builtins/clamp.hlsl
M clang/test/CodeGenHLSL/builtins/fmod.hlsl
M clang/test/CodeGenHLSL/builtins/max.hlsl
M clang/test/CodeGenHLSL/builtins/min.hlsl
A clang/test/CodeGenHLSL/builtins/or.hlsl
M clang/test/CodeGenHLSL/builtins/select.hlsl
M clang/test/CodeGenHLSL/cbuffer.hlsl
A clang/test/CodeGenHLSL/cbuffer_align.hlsl
M clang/test/CodeGenHLSL/cbuffer_and_namespaces.hlsl
M clang/test/CodeGenHLSL/cbuffer_with_packoffset.hlsl
M clang/test/CodeGenHLSL/cbuffer_with_static_global_and_function.hlsl
A clang/test/CodeGenHLSL/default_cbuffer.hlsl
A clang/test/CodeGenHLSL/default_cbuffer_with_layout.hlsl
M clang/test/CodeGenHLSL/resource-bindings.hlsl
M clang/test/CodeGenHLSL/semantics/GroupIndex-codegen.hlsl
M clang/test/CodeGenObjC/arc-blocks.m
M clang/test/CodeGenObjC/arc-property.m
M clang/test/CodeGenObjC/arc-weak-property.m
M clang/test/CodeGenObjC/arc.m
M clang/test/CodeGenObjC/arm64-int32-ivar.m
M clang/test/CodeGenObjC/bitfield-ivar-offsets.m
M clang/test/CodeGenObjC/constant-non-fragile-ivar-offset.m
M clang/test/CodeGenObjC/direct-method.m
M clang/test/CodeGenObjC/hidden-visibility.m
M clang/test/CodeGenObjC/interface-layout-64.m
M clang/test/CodeGenObjC/ivar-base-as-invariant-load.m
M clang/test/CodeGenObjC/metadata-symbols-64.m
M clang/test/CodeGenObjC/nontrivial-c-struct-property.m
M clang/test/CodeGenObjC/objc-asm-attribute-test.m
M clang/test/CodeGenObjC/ubsan-bool.m
M clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
A clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel-linking.cl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/as_type.cl
M clang/test/CodeGenOpenCL/atomic-ops.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-dl-insts-gfx11.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-param-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w64.cl
M clang/test/CodeGenOpenCL/kernel-attributes.cl
R clang/test/CoverageMapping/mcdc-error-nests.cpp
A clang/test/CoverageMapping/mcdc-nested-expr.cpp
M clang/test/CoverageMapping/terminate-statements.cpp
A clang/test/Driver/HLSL/metal-converter.hlsl
A clang/test/Driver/Inputs/ohos_native_tree/llvm/lib/clang/x.y.z/lib/loongarch64-linux-ohos/.keep
A clang/test/Driver/Inputs/ohos_native_tree/llvm/lib/clang/x.y.z/lib/loongarch64-linux-ohos/clang_rt.crtbegin.o
A clang/test/Driver/Inputs/ohos_native_tree/llvm/lib/clang/x.y.z/lib/loongarch64-linux-ohos/clang_rt.crtend.o
A clang/test/Driver/Inputs/ohos_native_tree/llvm/lib/clang/x.y.z/lib/loongarch64-linux-ohos/libclang_rt.builtins.a
A clang/test/Driver/Inputs/ohos_native_tree/sysroot/usr/include/loongarch64-linux-ohos/.keep
A clang/test/Driver/Inputs/ohos_native_tree/sysroot/usr/lib/loongarch64-linux-ohos/.keep
A clang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_abi_version_600.bc
A clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_abi_version_600.bc
A clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_abi_version_600.bc
A clang/test/Driver/aarch64-execute-only.c
A clang/test/Driver/aarch64-nvidia-olympus.c
A clang/test/Driver/aix-shared-lib-tls-model-opt.c
M clang/test/Driver/aix-small-local-exec-dynamic-tls.c
M clang/test/Driver/amdgpu-toolchain.c
M clang/test/Driver/apple-arm64-arch.c
M clang/test/Driver/arm-thread-pointer.c
A clang/test/Driver/atomic-options.hip
M clang/test/Driver/clang-offload-bundler-asserts-on.c
M clang/test/Driver/clang-offload-bundler-standardize.c
M clang/test/Driver/clang-offload-bundler.c
M clang/test/Driver/clang_f_opts.c
M clang/test/Driver/compilation_database_multiarch.c
R clang/test/Driver/cuda-no-pgo-or-coverage.cu
M clang/test/Driver/darwin-ld-platform-version-macos-requires-darwin.c
M clang/test/Driver/dxc_dxv_path.hlsl
M clang/test/Driver/fmemprof.cpp
M clang/test/Driver/fprofile-continuous.c
M clang/test/Driver/fsanitize.c
M clang/test/Driver/hexagon-toolchain-elf.c
M clang/test/Driver/hexagon-toolchain-linux.c
M clang/test/Driver/hip-code-object-version.hip
M clang/test/Driver/hip-cuid-hash.hip
M clang/test/Driver/hip-device-libs.hip
M clang/test/Driver/hip-gz-options.hip
M clang/test/Driver/hip-link-bc-to-bc.hip
M clang/test/Driver/hip-link-bundle-archive.hip
M clang/test/Driver/hip-offload-compress-zlib.hip
M clang/test/Driver/hip-offload-compress-zstd.hip
M clang/test/Driver/hip-options.hip
M clang/test/Driver/hip-partial-link.hip
M clang/test/Driver/hip-rdc-device-only.hip
A clang/test/Driver/hip-toolchain-rdc-flto-partitions.hip
M clang/test/Driver/hip-toolchain-rdc-separate.hip
M clang/test/Driver/hip-toolchain-rdc-static-lib.hip
M clang/test/Driver/hip-toolchain-rdc.hip
M clang/test/Driver/linker-wrapper.c
M clang/test/Driver/mips-abi.c
M clang/test/Driver/module-fgen-reduced-bmi.cppm
M clang/test/Driver/mtargetos-darwin.c
M clang/test/Driver/offload-Xarch.c
M clang/test/Driver/ohos.c
A clang/test/Driver/opencl-aot-compilation.cl
M clang/test/Driver/openmp-offload.c
A clang/test/Driver/print-enabled-extensions/aarch64-olympus.c
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Driver/riscv-features.c
M clang/test/Driver/sanitizer-ld.c
M clang/test/Driver/sparc-ias-Wa.s
M clang/test/Driver/spirv-openmp-toolchain.c
M clang/test/Driver/spirv-toolchain.cl
M clang/test/Driver/wasm-toolchain.c
M clang/test/Driver/xros-driver-requires-darwin-host.c
A clang/test/Frontend/verify-mulptiple-prefixes.c
M clang/test/Frontend/verify.c
M clang/test/Frontend/verify3.c
M clang/test/Headers/__clang_hip_math.hip
M clang/test/Headers/gpuintrin.c
M clang/test/Index/pch-from-libclang.c
M clang/test/Index/print-type.cpp
M clang/test/Lexer/cxx-features.cpp
M clang/test/Lexer/ms-extensions.c
R clang/test/Lexer/newline-eof-c++98-compat.cpp
M clang/test/Lexer/newline-eof.c
M clang/test/Misc/diag-template-diffing-cxx11.cpp
M clang/test/Misc/target-invalid-cpu-note/aarch64.c
M clang/test/Misc/time-passes.c
M clang/test/Misc/warning-flags.c
M clang/test/Modules/Inputs/export_as_test.modulemap
A clang/test/Modules/MixedModulePrecompile.cpp
A clang/test/Modules/clang-pragmas.c
A clang/test/Modules/diag-undefined-template.cpp
M clang/test/Modules/diagnostics.modulemap
M clang/test/Modules/eagerly-load-cxx-named-modules.cppm
M clang/test/Modules/export_as_test.c
A clang/test/Modules/external-but-not-type-external.cppm
A clang/test/Modules/lambda-in-module-purview-2.cppm
A clang/test/Modules/lambda-in-module-purview.cppm
A clang/test/Modules/modules-merge-enum.m
A clang/test/Modules/no-transitive-source-location-change-2.cppm
A clang/test/Modules/pr121245.cpp
A clang/test/Modules/pr125999.cppm
A clang/test/Modules/pr129982.cpp
A clang/test/Modules/pr28744.cpp
A clang/test/Modules/transitive-system.test
A clang/test/Modules/try-func-body.cppm
A clang/test/OpenMP/amdgcn_sret_ctor.cpp
M clang/test/OpenMP/amdgcn_target_global_constructor.cpp
M clang/test/OpenMP/amdgpu-unsafe-fp-atomics.cpp
M clang/test/OpenMP/cancel_codegen.cpp
M clang/test/OpenMP/for_reduction_messages.cpp
M clang/test/OpenMP/for_simd_reduction_messages.cpp
M clang/test/OpenMP/irbuilder_nested_openmp_parallel_empty.c
M clang/test/OpenMP/irbuilder_nested_parallel_for.c
M clang/test/OpenMP/metadirective_ast_print.c
A clang/test/OpenMP/metadirective_otherwise.cpp
M clang/test/OpenMP/nested_loop_codegen.cpp
M clang/test/OpenMP/ompx_attributes_codegen.cpp
M clang/test/OpenMP/parallel_codegen.cpp
M clang/test/OpenMP/parallel_for_reduction_messages.cpp
M clang/test/OpenMP/requires_ast_print.cpp
M clang/test/OpenMP/requires_messages.cpp
M clang/test/OpenMP/sections_reduction_messages.cpp
M clang/test/OpenMP/target_data_ast_print.cpp
M clang/test/OpenMP/target_map_messages.cpp
M clang/test/OpenMP/taskgroup_codegen.cpp
M clang/test/OpenMP/thread_limit_nvptx.c
A clang/test/Parser/Inputs/cuda.h
M clang/test/Parser/asm.cpp
A clang/test/Parser/atomic-options.hip
M clang/test/Parser/cxx-attributes.cpp
M clang/test/Parser/cxx-template-decl.cpp
M clang/test/Parser/cxx1z-decomposition.cpp
M clang/test/Parser/cxx2c-variadic-friends.cpp
M clang/test/Parser/decomposed-condition.cpp
M clang/test/Parser/parser_overflow.c
M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl
M clang/test/ParserOpenACC/parse-cache-construct.c
M clang/test/ParserOpenACC/parse-cache-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-clauses.cpp
M clang/test/ParserOpenACC/parse-constructs.c
M clang/test/ParserOpenACC/parse-constructs.cpp
M clang/test/Preprocessor/bpf-predefined-macros.c
A clang/test/Preprocessor/embed_constexpr.c
M clang/test/Preprocessor/ohos.c
M clang/test/Preprocessor/riscv-target-features.c
A clang/test/Preprocessor/warn-macro-undef-true.c
A clang/test/Sema/GH126231.cpp
M clang/test/Sema/aarch64-special-register.c
M clang/test/Sema/aarch64-sve-vector-exp-ops.c
M clang/test/Sema/aarch64-sve-vector-log-ops.c
M clang/test/Sema/aarch64-sve-vector-pow-ops.c
M clang/test/Sema/aarch64-sve-vector-trig-ops.c
M clang/test/Sema/attr-args.c
M clang/test/Sema/attr-availability-macosx.cpp
M clang/test/Sema/bool-compare.c
M clang/test/Sema/builtins-elementwise-math.c
M clang/test/Sema/builtins-reduction-math.c
A clang/test/Sema/c23-varargs.c
M clang/test/Sema/compare.c
M clang/test/Sema/count-builtins.c
A clang/test/Sema/excess-embed-data.c
M clang/test/Sema/for.c
M clang/test/Sema/format-strings.c
M clang/test/Sema/generic-selection-type-extension.c
M clang/test/Sema/generic-selection.c
A clang/test/Sema/offsetof-ucrt.c
M clang/test/Sema/parentheses.cpp
A clang/test/Sema/riscv-interrupt-attr-qci.c
M clang/test/Sema/riscv-rvv-vector-exp-ops.c
M clang/test/Sema/riscv-rvv-vector-log-ops.c
M clang/test/Sema/riscv-rvv-vector-trig-ops.c
M clang/test/Sema/riscv-sve-vector-pow-ops.c
A clang/test/Sema/shift-bool.c
A clang/test/Sema/shift-bool.cpp
M clang/test/Sema/types.c
M clang/test/Sema/varargs-x86-64.c
M clang/test/Sema/varargs.c
A clang/test/Sema/vector-ast.cpp
M clang/test/Sema/warn-thread-safety-analysis.c
A clang/test/SemaCUDA/dtor.cu
A clang/test/SemaCUDA/spirv-attrs-diag.cu
M clang/test/SemaCUDA/spirv-attrs.cu
M clang/test/SemaCXX/PR62533.cpp
M clang/test/SemaCXX/addr-of-overloaded-function.cpp
M clang/test/SemaCXX/attr-print.cpp
M clang/test/SemaCXX/attr-require-constant-initialization.cpp
M clang/test/SemaCXX/bool-compare.cpp
M clang/test/SemaCXX/builtin-ptrtomember-ambig.cpp
A clang/test/SemaCXX/builtin-structured-binding-size.cpp
M clang/test/SemaCXX/builtins-elementwise-math.cpp
M clang/test/SemaCXX/calling-conv-compat.cpp
M clang/test/SemaCXX/concept-crash-on-diagnostic.cpp
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
M clang/test/SemaCXX/constexpr-builtin-bit-cast.cpp
A clang/test/SemaCXX/constexpr-if.cpp
A clang/test/SemaCXX/copy-ctor-template.cpp
R clang/test/SemaCXX/coroutine-decltype.cpp
A clang/test/SemaCXX/coroutine-unevaluate.cpp
M clang/test/SemaCXX/ctad.cpp
M clang/test/SemaCXX/cxx0x-defaulted-functions.cpp
M clang/test/SemaCXX/cxx0x-nontrivial-union.cpp
M clang/test/SemaCXX/cxx11-user-defined-literals.cpp
M clang/test/SemaCXX/cxx2a-adl-only-template-id.cpp
M clang/test/SemaCXX/cxx2c-constexpr-placement-new.cpp
M clang/test/SemaCXX/cxx2c-enum-compare.cpp
M clang/test/SemaCXX/cxx98-compat.cpp
M clang/test/SemaCXX/decomposed-condition.cpp
M clang/test/SemaCXX/deduced-return-type-cxx14.cpp
A clang/test/SemaCXX/derived-to-base-propagate-qualifiers.cpp
A clang/test/SemaCXX/embed-init-list.cpp
M clang/test/SemaCXX/err_init_conversion_failed.cpp
M clang/test/SemaCXX/generic-selection.cpp
A clang/test/SemaCXX/gnu-asm-constexpr.cpp
M clang/test/SemaCXX/init-priority-attr.cpp
M clang/test/SemaCXX/member-pointer.cpp
A clang/test/SemaCXX/ms-member-pointer.cpp
M clang/test/SemaCXX/ms-property.cpp
A clang/test/SemaCXX/offsetof-ucrt.cpp
M clang/test/SemaCXX/paren-list-agg-init.cpp
M clang/test/SemaCXX/pr25181-crash-on-invalid.cpp
M clang/test/SemaCXX/pr36536.cpp
M clang/test/SemaCXX/source_location.cpp
M clang/test/SemaCXX/sugar-common-types.cpp
M clang/test/SemaCXX/uninitialized.cpp
A clang/test/SemaCXX/union-member-destructor.cpp
M clang/test/SemaCXX/unique_object_duplication.h
A clang/test/SemaCXX/unnecessary-virtual-specifier.cpp
A clang/test/SemaCXX/unused-bindings.cpp
M clang/test/SemaCXX/unused.cpp
M clang/test/SemaCXX/using-decl-templates.cpp
M clang/test/SemaCXX/vararg-non-pod.cpp
M clang/test/SemaCXX/varargs.cpp
M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-in-container-span-construct.cpp
A clang/test/SemaHLSL/BuiltIns/AddUint64-errors.hlsl
R clang/test/SemaHLSL/BuiltIns/and-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/asint16-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/asuint16-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/clamp-errors-16bit.hlsl
M clang/test/SemaHLSL/BuiltIns/clamp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/distance-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/exp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/firstbithigh-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/firstbitlow-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/fmod-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/length-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/logical-operator-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/mad-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/max-errors-16bit.hlsl
A clang/test/SemaHLSL/BuiltIns/min-errors-16bit.hlsl
M clang/test/SemaHLSL/BuiltIns/reflect-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/reversebits-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/round-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/select-errors.hlsl
A clang/test/SemaHLSL/Language/NoVirtual.hlsl
M clang/test/SemaHLSL/Semantics/valid_entry_parameter.hlsl
A clang/test/SemaHLSL/Types/BuiltinVector/BooleanVectorConstantExpr.hlsl
M clang/test/SemaHLSL/WaveBuiltinAvailability.hlsl
M clang/test/SemaHLSL/cb_error.hlsl
M clang/test/SemaObjCXX/message.mm
M clang/test/SemaObjCXX/propert-dot-error.mm
M clang/test/SemaOpenACC/atomic-construct-ast.cpp
A clang/test/SemaOpenACC/cache-construct-ast.cpp
A clang/test/SemaOpenACC/cache-construct.cpp
M clang/test/SemaOpenACC/combined-construct-ast.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
M clang/test/SemaOpenACC/combined-construct-if-ast.cpp
M clang/test/SemaOpenACC/combined-construct-num_workers-ast.cpp
M clang/test/SemaOpenACC/compute-construct-ast.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/compute-construct-intexpr-clause-ast.cpp
M clang/test/SemaOpenACC/data-construct-default-ast.cpp
M clang/test/SemaOpenACC/data-construct-if-ast.cpp
M clang/test/SemaOpenACC/data-construct.cpp
A clang/test/SemaOpenACC/declare-construct-ast.cpp
A clang/test/SemaOpenACC/declare-construct.cpp
M clang/test/SemaOpenACC/init-construct-ast.cpp
M clang/test/SemaOpenACC/loop-ast.cpp
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
A clang/test/SemaOpenACC/routine-construct-ast.cpp
A clang/test/SemaOpenACC/routine-construct-clauses.cpp
A clang/test/SemaOpenACC/routine-construct.cpp
M clang/test/SemaOpenACC/shutdown-construct-ast.cpp
R clang/test/SemaOpenACC/unimplemented-construct.c
M clang/test/SemaOpenCL/invalid-kernel-attrs.cl
M clang/test/SemaSYCL/float128.cpp
M clang/test/SemaTemplate/constructor-template.cpp
M clang/test/SemaTemplate/cwg2398.cpp
M clang/test/SemaTemplate/deduction-guide.cpp
M clang/test/SemaTemplate/friend-template.cpp
M clang/test/SemaTemplate/instantiate-member-pointers.cpp
M clang/test/SemaTemplate/ms-sizeof-missing-typename.cpp
M clang/test/SemaTemplate/nested-template.cpp
M clang/test/SemaTemplate/qualified-id.cpp
M clang/test/SemaTemplate/temp_arg_nontype.cpp
M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
M clang/test/SemaTemplate/template-id-expr.cpp
M clang/test/SemaTemplate/typename-specifier-3.cpp
M clang/test/SemaTemplate/typename-specifier-4.cpp
M clang/test/SemaTemplate/typename-specifier.cpp
M clang/test/SemaTemplate/typo-dependent-name.cpp
M clang/test/SemaTemplate/typo-template-name.cpp
A clang/test/TableGen/HLSLAttribute-errors.td
M clang/test/Tooling/clang-linker-wrapper-spirv-elf.cpp
M clang/test/Tooling/lit.local.cfg
M clang/test/lit.cfg.py
A clang/test/utils/update_cc_test_checks/Inputs/filter_out_after.c
A clang/test/utils/update_cc_test_checks/Inputs/filter_out_after.c.expected
A clang/test/utils/update_cc_test_checks/filter_out_after.test
M clang/tools/CMakeLists.txt
M clang/tools/amdgpu-arch/AMDGPUArch.cpp
M clang/tools/amdgpu-arch/AMDGPUArchByHIP.cpp
M clang/tools/c-index-test/c-index-test.c
A clang/tools/cir-lsp-server/CMakeLists.txt
A clang/tools/cir-lsp-server/cir-lsp-server.cpp
M clang/tools/cir-opt/CMakeLists.txt
M clang/tools/cir-opt/cir-opt.cpp
A clang/tools/cir-translate/CMakeLists.txt
A clang/tools/cir-translate/cir-translate.cpp
M clang/tools/clang-format/git-clang-format
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/driver/CMakeLists.txt
M clang/tools/driver/cc1_main.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CIndexCXX.cpp
M clang/tools/libclang/CXCursor.cpp
M clang/tools/libclang/CXType.cpp
M clang/tools/libclang/Indexing.cpp
M clang/tools/libclang/libclang.map
M clang/tools/scan-build/libexec/ccc-analyzer
M clang/unittests/AST/ByteCode/toAPValue.cpp
M clang/unittests/AST/DeclPrinterTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
M clang/unittests/Analysis/FlowSensitive/SmartPointerAccessorCachingTest.cpp
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
M clang/unittests/Basic/SourceManagerTest.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/SortIncludesTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Frontend/CMakeLists.txt
M clang/unittests/Frontend/FrontendActionTest.cpp
A clang/unittests/Frontend/NoAlterCodeGenActionTest.cpp
M clang/unittests/Interpreter/InterpreterExtensionsTest.cpp
M clang/unittests/Lex/HeaderSearchTest.cpp
M clang/unittests/Lex/LexerTest.cpp
M clang/unittests/Lex/ModuleDeclStateTest.cpp
M clang/unittests/Lex/PPCallbacksTest.cpp
M clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp
M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
M clang/unittests/Lex/PPMemoryAllocationsTest.cpp
M clang/unittests/Sema/HeuristicResolverTest.cpp
M clang/unittests/StaticAnalyzer/AnalyzerOptionsTest.cpp
M clang/unittests/StaticAnalyzer/ExprEngineVisitTest.cpp
M clang/utils/TableGen/CMakeLists.txt
M clang/utils/TableGen/ClangAttrEmitter.cpp
A clang/utils/TableGen/ClangBuiltinTemplatesEmitter.cpp
M clang/utils/TableGen/NeonEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
M clang/utils/perf-training/perf-helper.py
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M clang/www/cxx_status.html
M clang/www/get_involved.html
M clang/www/get_started.html
M clang/www/make_cxx_dr_status
A cmake/Modules/FindLibcCommonUtils.cmake
M cmake/Modules/FindPrefixFromConfig.cmake
M compiler-rt/include/orc_rt/c_api.h
M compiler-rt/include/profile/InstrProfData.inc
M compiler-rt/include/profile/instr_prof_interface.h
M compiler-rt/lib/asan/asan_internal.h
M compiler-rt/lib/asan/asan_linux.cpp
M compiler-rt/lib/asan/asan_mac.cpp
M compiler-rt/lib/asan/asan_shadow_setup.cpp
M compiler-rt/lib/asan/asan_win.cpp
M compiler-rt/lib/ctx_profile/CtxInstrContextNode.h
M compiler-rt/lib/ctx_profile/CtxInstrProfiling.cpp
M compiler-rt/lib/ctx_profile/CtxInstrProfiling.h
M compiler-rt/lib/ctx_profile/tests/CtxInstrProfilingTest.cpp
M compiler-rt/lib/hwasan/hwasan_globals.cpp
M compiler-rt/lib/interception/interception_win.cpp
M compiler-rt/lib/interception/tests/interception_win_test.cpp
M compiler-rt/lib/orc/CMakeLists.txt
M compiler-rt/lib/orc/coff_platform.cpp
M compiler-rt/lib/orc/common.h
M compiler-rt/lib/orc/dlfcn_wrapper.cpp
M compiler-rt/lib/orc/elfnix_platform.cpp
M compiler-rt/lib/orc/error.h
R compiler-rt/lib/orc/extensible_rtti.cpp
R compiler-rt/lib/orc/extensible_rtti.h
M compiler-rt/lib/orc/macho_platform.cpp
A compiler-rt/lib/orc/rtti.cpp
A compiler-rt/lib/orc/rtti.h
M compiler-rt/lib/orc/run_program_wrapper.cpp
M compiler-rt/lib/orc/tests/unit/CMakeLists.txt
M compiler-rt/lib/orc/tests/unit/c_api_test.cpp
M compiler-rt/lib/orc/tests/unit/error_test.cpp
R compiler-rt/lib/orc/tests/unit/extensible_rtti_test.cpp
A compiler-rt/lib/orc/tests/unit/rtti_test.cpp
A compiler-rt/lib/orc/tests/unit/unique_function_test.cpp
M compiler-rt/lib/orc/tests/unit/wrapper_function_utils_test.cpp
A compiler-rt/lib/orc/unique_function.h
M compiler-rt/lib/orc/wrapper_function_utils.h
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/profile/InstrProfilingBuffer.c
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/profile/InstrProfilingInternal.h
M compiler-rt/lib/profile/InstrProfilingPlatformAIX.c
M compiler-rt/lib/profile/InstrProfilingPlatformDarwin.c
M compiler-rt/lib/profile/InstrProfilingPlatformLinux.c
M compiler-rt/lib/profile/InstrProfilingPlatformOther.c
M compiler-rt/lib/profile/InstrProfilingPlatformWindows.c
M compiler-rt/lib/profile/InstrProfilingUtil.c
M compiler-rt/lib/profile/InstrProfilingUtil.h
M compiler-rt/lib/profile/InstrProfilingWriter.c
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_syscalls.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cpp
M compiler-rt/lib/sanitizer_common/tests/sanitizer_procmaps_mac_test.cpp
M compiler-rt/lib/tsan/go/buildgo.sh
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
M compiler-rt/lib/tsan/rtl/tsan_platform.h
M compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
M compiler-rt/test/asan/TestCases/Darwin/suppressions-sandbox.cpp
M compiler-rt/test/asan/lit.cfg.py
M compiler-rt/test/ctx_profile/TestCases/generate-context.cpp
M compiler-rt/test/profile/ContinuousSyncMode/basic.c
M compiler-rt/test/profile/ContinuousSyncMode/get-filename.c
M compiler-rt/test/profile/ContinuousSyncMode/image-with-mcdc.c
M compiler-rt/test/profile/ContinuousSyncMode/image-with-no-counters.c
M compiler-rt/test/profile/ContinuousSyncMode/multi-threaded.cpp
M compiler-rt/test/profile/ContinuousSyncMode/online-merging-windows.c
M compiler-rt/test/profile/ContinuousSyncMode/online-merging.c
M compiler-rt/test/profile/ContinuousSyncMode/pid-substitution.c
M compiler-rt/test/profile/ContinuousSyncMode/reset-default-profile.c
M compiler-rt/test/profile/ContinuousSyncMode/runtime-counter-relocation.c
M compiler-rt/test/profile/ContinuousSyncMode/set-file-object.c
M compiler-rt/test/profile/ContinuousSyncMode/set-filename.c
R compiler-rt/test/profile/Inputs/instrprof-order-file.c
A compiler-rt/test/profile/Linux/coverage-statement-expression.cpp
M compiler-rt/test/profile/Posix/instrprof-fork.c
M compiler-rt/test/profile/instrprof-darwin-exports.c
A compiler-rt/test/profile/instrprof-no-mmap-during-merging.c
R compiler-rt/test/profile/instrprof-order-file.test
M compiler-rt/test/profile/lit.cfg.py
M compiler-rt/test/sanitizer_common/TestCases/Darwin/malloc_zone.cpp
A compiler-rt/test/sanitizer_common/TestCases/Linux/copy_file_range.c
M compiler-rt/test/tsan/cxa_guard_acquire.cpp
M compiler-rt/test/tysan/lit.cfg.py
M compiler-rt/test/ubsan/TestCases/Float/cast-overflow.cpp
M cross-project-tests/amdgpu/builtins-amdgcn-swmmac-w32.cl
M cross-project-tests/debuginfo-tests/llgdb-tests/llgdb.py
M cross-project-tests/debuginfo-tests/llgdb-tests/test_debuginfo.pl
M cross-project-tests/lit.cfg.py
M flang-rt/CMakeLists.txt
M flang-rt/cmake/modules/AddFlangRT.cmake
M flang-rt/cmake/modules/AddFlangRTOffload.cmake
M flang-rt/cmake/modules/GetToolchainDirs.cmake
A flang-rt/cmake/modules/HandleLibs.cmake
A flang-rt/cmake/quadmath_wrapper.h.in
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/lib/cuda/CMakeLists.txt
M flang-rt/lib/cuda/memory.cpp
M flang-rt/lib/quadmath/CMakeLists.txt
M flang-rt/lib/quadmath/complex-math.h
M flang-rt/lib/quadmath/math-entries.h
M flang-rt/lib/runtime/CMakeLists.txt
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/command.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/exceptions.cpp
M flang-rt/lib/runtime/extensions.cpp
M flang-rt/lib/runtime/pointer.cpp
M flang-rt/lib/runtime/support.cpp
M flang-rt/lib/runtime/transformational.cpp
M flang-rt/lib/runtime/unit.cpp
M flang-rt/lib/runtime/unit.h
M flang-rt/unittests/Runtime/Support.cpp
M flang-rt/unittests/Runtime/Transformational.cpp
M flang/CMakeLists.txt
M flang/cmake/modules/FlangCommon.cmake
A flang/cmake/quadmath_wrapper.h.in
A flang/docs/ArrayRepacking.md
M flang/docs/Extensions.md
M flang/docs/F202X.md
M flang/docs/Intrinsics.md
M flang/docs/OpenMP-descriptor-management.md
M flang/docs/index.md
M flang/examples/FeatureList/FeatureList.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.h
M flang/include/flang/Common/api-attrs.h
M flang/include/flang/Common/erfc-scaled.h
M flang/include/flang/Common/windows-include.h
M flang/include/flang/Evaluate/characteristics.h
M flang/include/flang/Evaluate/common.h
M flang/include/flang/Evaluate/target.h
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Evaluate/traverse.h
M flang/include/flang/Evaluate/variable.h
M flang/include/flang/Frontend/CompilerInstance.h
M flang/include/flang/Frontend/CompilerInvocation.h
M flang/include/flang/Frontend/FrontendActions.h
A flang/include/flang/Frontend/ParserActions.h
M flang/include/flang/Frontend/TargetOptions.h
M flang/include/flang/Lower/BoxAnalyzer.h
M flang/include/flang/Lower/ConvertVariable.h
M flang/include/flang/Lower/Cuda.h
R flang/include/flang/Lower/DumpEvaluateExpr.h
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Optimizer/Builder/CUFCommon.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/HLFIRTools.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
A flang/include/flang/Optimizer/Builder/Runtime/CUDA/Descriptor.h
M flang/include/flang/Optimizer/Builder/Runtime/Command.h
M flang/include/flang/Optimizer/Builder/Runtime/Exceptions.h
M flang/include/flang/Optimizer/Builder/Runtime/Inquiry.h
M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
M flang/include/flang/Optimizer/Builder/Runtime/Transformational.h
M flang/include/flang/Optimizer/Builder/TemporaryStorage.h
M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Optimizer/Dialect/FIRAttr.td
M flang/include/flang/Optimizer/Dialect/FIROps.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Optimizer/Dialect/FIRTypes.td
M flang/include/flang/Optimizer/HLFIR/HLFIRDialect.h
M flang/include/flang/Optimizer/HLFIR/HLFIROpBase.td
M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
M flang/include/flang/Optimizer/Support/InternalNames.h
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Parser/dump-parse-tree.h
A flang/include/flang/Parser/options.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Parser/parsing.h
M flang/include/flang/Parser/preprocessor.h
M flang/include/flang/Runtime/command.h
M flang/include/flang/Runtime/exceptions.h
M flang/include/flang/Runtime/extensions.h
M flang/include/flang/Runtime/pointer.h
M flang/include/flang/Runtime/support.h
M flang/include/flang/Runtime/transformational.h
A flang/include/flang/Semantics/dump-expr.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/symbol.h
M flang/include/flang/Semantics/tools.h
M flang/include/flang/Support/Fortran-features.h
M flang/include/flang/Support/OpenMP-utils.h
M flang/include/flang/Tools/TargetSetup.h
M flang/lib/Evaluate/CMakeLists.txt
M flang/lib/Evaluate/check-expression.cpp
M flang/lib/Evaluate/fold-logical.cpp
M flang/lib/Evaluate/fold.cpp
M flang/lib/Evaluate/host.h
M flang/lib/Evaluate/intrinsics-library.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/shape.cpp
M flang/lib/Evaluate/target.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Evaluate/variable.cpp
M flang/lib/Frontend/CMakeLists.txt
M flang/lib/Frontend/CompilerInstance.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendAction.cpp
M flang/lib/Frontend/FrontendActions.cpp
A flang/lib/Frontend/ParserActions.cpp
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Lower/ConvertConstant.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/ConvertVariable.cpp
R flang/lib/Lower/DumpEvaluateExpr.cpp
M flang/lib/Lower/IterationSpace.cpp
A flang/lib/Lower/OpenMP/ClauseFinder.h
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/PrivateReductionUtils.cpp
M flang/lib/Lower/OpenMP/PrivateReductionUtils.h
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Builder/CMakeLists.txt
M flang/lib/Optimizer/Builder/CUFCommon.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
A flang/lib/Optimizer/Builder/Runtime/CUDA/Descriptor.cpp
M flang/lib/Optimizer/Builder/Runtime/Command.cpp
M flang/lib/Optimizer/Builder/Runtime/Exceptions.cpp
M flang/lib/Optimizer/Builder/Runtime/Inquiry.cpp
M flang/lib/Optimizer/Builder/Runtime/Transformational.cpp
M flang/lib/Optimizer/Builder/TemporaryStorage.cpp
M flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Dialect/FIRAttr.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp
M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
M flang/lib/Optimizer/HLFIR/Transforms/ScheduleOrderedAssignments.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/OpenMP/GenericLoopConversion.cpp
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
M flang/lib/Optimizer/OpenMP/MapsForPrivatizedSymbols.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/CMakeLists.txt
A flang/lib/Optimizer/Transforms/CUFComputeSharedMemoryOffsetsAndSize.cpp
M flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
A flang/lib/Optimizer/Transforms/SimplifyFIROperations.cpp
M flang/lib/Optimizer/Transforms/SimplifyIntrinsics.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/prescan.h
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/CMakeLists.txt
M flang/lib/Semantics/assignment.cpp
M flang/lib/Semantics/check-allocate.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-coarray.cpp
M flang/lib/Semantics/check-coarray.h
M flang/lib/Semantics/check-cuda.cpp
M flang/lib/Semantics/check-deallocate.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-do-forall.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/data-to-inits.cpp
M flang/lib/Semantics/definable.cpp
A flang/lib/Semantics/dump-expr.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/pointer-assignment.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/symbol.cpp
M flang/lib/Semantics/tools.cpp
M flang/lib/Semantics/type.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/lib/Support/Fortran.cpp
M flang/lib/Support/OpenMP-utils.cpp
M flang/module/cudadevice.f90
M flang/module/ieee_arithmetic.f90
M flang/runtime/CMakeLists.txt
M flang/test/Analysis/AliasAnalysis/alias-analysis-3.fir
M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-1.fir
M flang/test/Analysis/AliasAnalysis/load-ptr-designate.fir
M flang/test/Analysis/AliasAnalysis/ptr-component.fir
A flang/test/Analysis/AliasAnalysis/source-kind.fir
M flang/test/CMakeLists.txt
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/config-file.f90
A flang/test/Driver/dash-x-f95-cpp-input.f
A flang/test/Driver/dash-x-f95-do-not-assume-fixed-form.f90
A flang/test/Driver/fd-lines-as.f90
M flang/test/Driver/input-from-stdin/input-from-stdin.f90
M flang/test/Driver/mlir-debug-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
A flang/test/Driver/verbose-asm.f90
M flang/test/Evaluate/folding06.f90
M flang/test/Fir/CUDA/cuda-abstract-result.mlir
M flang/test/Fir/CUDA/cuda-code-gen.mlir
M flang/test/Fir/CUDA/cuda-launch.fir
A flang/test/Fir/CUDA/cuda-shared-offset.mlir
A flang/test/Fir/CUDA/cuda-shared-to-llvm.mlir
M flang/test/Fir/CUDA/cuda-target-rewrite.mlir
M flang/test/Fir/Todo/coordinate_of_2.fir
M flang/test/Fir/Todo/coordinate_of_3.fir
M flang/test/Fir/abstract-results-bindc.fir
M flang/test/Fir/abstract-results.fir
A flang/test/Fir/alloc-32.fir
M flang/test/Fir/alloc.fir
M flang/test/Fir/array-value-copy.fir
M flang/test/Fir/basic-program.fir
A flang/test/Fir/box-total-elements-fold.fir
M flang/test/Fir/boxproc-2.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/convert-to-llvm.fir
A flang/test/Fir/copy-codegen.fir
M flang/test/Fir/cuf.mlir
M flang/test/Fir/dispatch.f90
A flang/test/Fir/do_concurrent.fir
M flang/test/Fir/field-index.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
A flang/test/Fir/is-contiguous-box-fold.fir
A flang/test/Fir/omp-teams.fir
M flang/test/Fir/pdt.fir
M flang/test/Fir/struct-passing-loongarch64-byreg.fir
A flang/test/Fir/struct-passing-powerpc64-aix-byval.fir
A flang/test/Fir/struct-passing-ppc64le-byval.fir
M flang/test/Fir/struct-passing-return-loongarch64-bystack.fir
M flang/test/Fir/struct-passing-x86-64-byval.fir
M flang/test/Fir/struct-passing-x86-64-one-field-inreg.fir
M flang/test/Fir/struct-passing-x86-64-several-fields-inreg.fir
M flang/test/Fir/struct-return-aarch64.fir
M flang/test/Fir/struct-return-loongarch64-byreg.fir
A flang/test/Fir/struct-return-powerpc64-aix.fir
A flang/test/Fir/struct-return-ppc64le.fir
M flang/test/Fir/struct-return-x86-64.fir
M flang/test/Fir/target-rewrite-complex-10-x86.fir
M flang/test/Fir/target-rewrite-complex.fir
M flang/test/Fir/target-rewrite-complex16.fir
M flang/test/Fir/target-rewrite-indirect-calls.fir
M flang/test/Fir/target-rewrite-integer-loongarch64.fir
M flang/test/Fir/target.fir
M flang/test/HLFIR/all-lowering.fir
M flang/test/HLFIR/any-lowering.fir
M flang/test/HLFIR/assign-codegen-derived.fir
M flang/test/HLFIR/associate-codegen.fir
M flang/test/HLFIR/assumed-type-actual-args.f90
M flang/test/HLFIR/boxchar_emboxing.f90
M flang/test/HLFIR/c_ptr_byvalue.f90
M flang/test/HLFIR/count-lowering.fir
M flang/test/HLFIR/cshift-lowering.fir
M flang/test/HLFIR/designate-codegen-component-refs.fir
M flang/test/HLFIR/dot_product-lowering.fir
M flang/test/HLFIR/elemental-codegen-nested.fir
M flang/test/HLFIR/maxloc-lowering.fir
M flang/test/HLFIR/maxval-elemental.fir
M flang/test/HLFIR/maxval-lowering.fir
M flang/test/HLFIR/minloc-lowering.fir
M flang/test/HLFIR/minval-lowering.fir
M flang/test/HLFIR/mul_transpose.f90
M flang/test/HLFIR/opt-bufferization-eval_in_mem.fir
A flang/test/HLFIR/order_assignments/forall-pointer-assignment-codegen.fir
A flang/test/HLFIR/order_assignments/forall-pointer-assignment-scheduling-bounds.f90
A flang/test/HLFIR/order_assignments/forall-pointer-assignment-scheduling-polymorphic.f90
A flang/test/HLFIR/order_assignments/forall-pointer-assignment-scheduling.f90
A flang/test/HLFIR/order_assignments/forall-proc-pointer-assignment-codegen.fir
A flang/test/HLFIR/order_assignments/forall-proc-pointer-assignment-scheduling-character.f90
A flang/test/HLFIR/order_assignments/forall-proc-pointer-assignment-scheduling.f90
M flang/test/HLFIR/order_assignments/user-defined-assignment.fir
M flang/test/HLFIR/order_assignments/vector-subscripts-codegen.fir
M flang/test/HLFIR/product-lowering.fir
M flang/test/HLFIR/reshape-lowering.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-cshift.fir
M flang/test/HLFIR/sum-lowering.fir
M flang/test/HLFIR/transpose-lowering.fir
M flang/test/Integration/OpenMP/map-types-and-sizes.f90
M flang/test/Integration/OpenMP/parallel-private-reduction-worstcase.f90
M flang/test/Integration/OpenMP/private-global.f90
M flang/test/Integration/debug-complex-1.f90
A flang/test/Integration/debug-cyclic-derived-type-4.f90
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/CUDA/cuda-cdevloc.cuf
M flang/test/Lower/CUDA/cuda-data-attribute.cuf
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
M flang/test/Lower/CUDA/cuda-device-proc.cuf
M flang/test/Lower/CUDA/cuda-devptr.cuf
M flang/test/Lower/CUDA/cuda-doconc.cuf
A flang/test/Lower/CUDA/cuda-kernel-alloca-block.cuf
M flang/test/Lower/CUDA/cuda-kernel-calls.cuf
M flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf
A flang/test/Lower/CUDA/cuda-pointer.cuf
M flang/test/Lower/CUDA/cuda-return01.cuf
M flang/test/Lower/CUDA/cuda-return02.cuf
A flang/test/Lower/CUDA/cuda-shared.cuf
A flang/test/Lower/CUDA/cuda-shared01.cuf
M flang/test/Lower/HLFIR/actual_target_for_dummy_pointer.f90
M flang/test/Lower/HLFIR/allocatable-and-pointer-status-change.f90
M flang/test/Lower/HLFIR/allocatable-end-of-scope-dealloc.f90
M flang/test/Lower/HLFIR/allocatable-return.f90
M flang/test/Lower/HLFIR/allocatables-and-pointers.f90
M flang/test/Lower/HLFIR/array-ctor-as-elemental.f90
M flang/test/Lower/HLFIR/array-ctor-derived.f90
M flang/test/Lower/HLFIR/array-ctor-index.f90
M flang/test/Lower/HLFIR/associate-construct.f90
M flang/test/Lower/HLFIR/assumed-rank-iface.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries-2.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries.f90
M flang/test/Lower/HLFIR/bindc-entry-stmt.f90
M flang/test/Lower/HLFIR/bindc-value-derived.f90
M flang/test/Lower/HLFIR/c_ptr-constant-init.f90
M flang/test/Lower/HLFIR/call-issue-124043.f90
M flang/test/Lower/HLFIR/call-sequence-associated-descriptors.f90
M flang/test/Lower/HLFIR/calls-array-results.f90
M flang/test/Lower/HLFIR/calls-assumed-shape.f90
M flang/test/Lower/HLFIR/calls-constant-expr-arg.f90
M flang/test/Lower/HLFIR/calls-f77.f90
M flang/test/Lower/HLFIR/calls-optional.f90
M flang/test/Lower/HLFIR/calls-percent-val-ref.f90
M flang/test/Lower/HLFIR/cray-pointers.f90
M flang/test/Lower/HLFIR/custom-intrinsic.f90
M flang/test/Lower/HLFIR/elemental-array-ops.f90
M flang/test/Lower/HLFIR/elemental-call-vector-subscripts.f90
M flang/test/Lower/HLFIR/elemental-user-procedure-ref.f90
M flang/test/Lower/HLFIR/entry_return.f90
M flang/test/Lower/HLFIR/expr-addr.f90
M flang/test/Lower/HLFIR/expr-as-inquired.f90
M flang/test/Lower/HLFIR/function-return-as-expr.f90
M flang/test/Lower/HLFIR/function-return.f90
M flang/test/Lower/HLFIR/goto-do-body.f90
M flang/test/Lower/HLFIR/ignore-rank-unlimited-polymorphic.f90
M flang/test/Lower/HLFIR/implicit-call-mismatch.f90
M flang/test/Lower/HLFIR/intentout-allocatable-components.f90
M flang/test/Lower/HLFIR/internal-procedures.f90
M flang/test/Lower/HLFIR/intrinsic-dynamically-optional.f90
M flang/test/Lower/HLFIR/intrinsic-module-procedures.f90
M flang/test/Lower/HLFIR/intrinsic-subroutines.f90
M flang/test/Lower/HLFIR/issue80884.f90
M flang/test/Lower/HLFIR/maxloc.f90
M flang/test/Lower/HLFIR/maxval.f90
M flang/test/Lower/HLFIR/minloc.f90
M flang/test/Lower/HLFIR/minval.f90
M flang/test/Lower/HLFIR/null.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-nopass.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-pass.f90
M flang/test/Lower/HLFIR/procedure-designators.f90
M flang/test/Lower/HLFIR/procedure-pointer.f90
M flang/test/Lower/HLFIR/product.f90
M flang/test/Lower/HLFIR/reshape.f90
M flang/test/Lower/HLFIR/select-rank.f90
M flang/test/Lower/HLFIR/select-type-selector.f90
M flang/test/Lower/HLFIR/structure-constructor.f90
M flang/test/Lower/HLFIR/sum.f90
M flang/test/Lower/HLFIR/transformational.f90
M flang/test/Lower/HLFIR/type-info-components.f90
M flang/test/Lower/HLFIR/user-defined-assignment.f90
M flang/test/Lower/HLFIR/vector-subscript-as-value.f90
M flang/test/Lower/Intrinsics/acos_complex16.f90
M flang/test/Lower/Intrinsics/acosh_complex16.f90
M flang/test/Lower/Intrinsics/asin_complex16.f90
M flang/test/Lower/Intrinsics/asinh_complex16.f90
M flang/test/Lower/Intrinsics/associated-proc-pointers.f90
M flang/test/Lower/Intrinsics/atan_complex16.f90
M flang/test/Lower/Intrinsics/atanh_complex16.f90
M flang/test/Lower/Intrinsics/c_associated.f90
M flang/test/Lower/Intrinsics/c_f_pointer.f90
M flang/test/Lower/Intrinsics/c_f_procpointer.f90
M flang/test/Lower/Intrinsics/c_funloc-proc-pointers.f90
M flang/test/Lower/Intrinsics/c_funloc.f90
M flang/test/Lower/Intrinsics/c_loc.f90
M flang/test/Lower/Intrinsics/c_ptr_eq_ne.f90
M flang/test/Lower/Intrinsics/chdir.f90
M flang/test/Lower/Intrinsics/cos_complex16.f90
M flang/test/Lower/Intrinsics/cosh_complex16.f90
M flang/test/Lower/Intrinsics/erfc.f90
M flang/test/Lower/Intrinsics/exp_complex16.f90
A flang/test/Lower/Intrinsics/hostnm-func.f90
A flang/test/Lower/Intrinsics/hostnm-sub.f90
M flang/test/Lower/Intrinsics/ieee_class.f90
M flang/test/Lower/Intrinsics/ieee_compare.f90
M flang/test/Lower/Intrinsics/ieee_flag.f90
M flang/test/Lower/Intrinsics/ieee_logb.f90
M flang/test/Lower/Intrinsics/ieee_max_min.f90
M flang/test/Lower/Intrinsics/ieee_next.f90
M flang/test/Lower/Intrinsics/ieee_operator_eq.f90
M flang/test/Lower/Intrinsics/ieee_real.f90
M flang/test/Lower/Intrinsics/ieee_rem.f90
M flang/test/Lower/Intrinsics/ieee_rint_int.f90
M flang/test/Lower/Intrinsics/ieee_rounding.f90
M flang/test/Lower/Intrinsics/ieee_unordered.f90
M flang/test/Lower/Intrinsics/loc.f90
M flang/test/Lower/Intrinsics/log_complex16.f90
M flang/test/Lower/Intrinsics/min.f90
M flang/test/Lower/Intrinsics/nearest.f90
M flang/test/Lower/Intrinsics/pow_complex16.f90
M flang/test/Lower/Intrinsics/pow_complex16i.f90
M flang/test/Lower/Intrinsics/pow_complex16k.f90
M flang/test/Lower/Intrinsics/product.f90
M flang/test/Lower/Intrinsics/reduce.f90
M flang/test/Lower/Intrinsics/rename.f90
M flang/test/Lower/Intrinsics/second.f90
M flang/test/Lower/Intrinsics/selected_logical_kind.f90
M flang/test/Lower/Intrinsics/shape.f90
M flang/test/Lower/Intrinsics/signal.f90
M flang/test/Lower/Intrinsics/sin_complex16.f90
M flang/test/Lower/Intrinsics/sinh_complex16.f90
M flang/test/Lower/Intrinsics/sqrt_complex16.f90
M flang/test/Lower/Intrinsics/storage_size.f90
M flang/test/Lower/Intrinsics/sum.f90
M flang/test/Lower/Intrinsics/system-optional.f90
M flang/test/Lower/Intrinsics/system.f90
M flang/test/Lower/Intrinsics/tan_complex16.f90
M flang/test/Lower/Intrinsics/tanh_complex16.f90
M flang/test/Lower/Intrinsics/transfer.f90
M flang/test/Lower/OpenACC/acc-atomic-capture.f90
M flang/test/Lower/OpenACC/acc-atomic-read.f90
M flang/test/Lower/OpenACC/acc-atomic-update-array.f90
M flang/test/Lower/OpenACC/acc-atomic-update-hlfir.f90
M flang/test/Lower/OpenACC/acc-atomic-update.f90
M flang/test/Lower/OpenACC/acc-atomic-write.f90
M flang/test/Lower/OpenACC/acc-data-operands-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-data-operands.f90
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/OpenACC/acc-enter-data-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-enter-data.f90
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-kernels.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-parallel.f90
M flang/test/Lower/OpenACC/acc-private-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-private.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
M flang/test/Lower/OpenACC/acc-serial.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/distribute-standalone-private.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-multiple-variables.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/wsloop.f90
R flang/test/Lower/OpenMP/Todo/from-expectation-modifier.f90
R flang/test/Lower/OpenMP/Todo/map-modifiers-close.f90
R flang/test/Lower/OpenMP/Todo/map-modifiers-ompxhold.f90
R flang/test/Lower/OpenMP/Todo/map-modifiers-present.f90
A flang/test/Lower/OpenMP/Todo/omp-declare-reduction-initsub.f90
M flang/test/Lower/OpenMP/Todo/omp-default-clause-inner-loop.f90
A flang/test/Lower/OpenMP/Todo/taskloop-cancel.f90
R flang/test/Lower/OpenMP/Todo/to-expectation-modifier.f90
M flang/test/Lower/OpenMP/allocatable-array-bounds.f90
M flang/test/Lower/OpenMP/allocatable-map.f90
M flang/test/Lower/OpenMP/array-bounds.f90
M flang/test/Lower/OpenMP/atomic-capture.f90
M flang/test/Lower/OpenMP/atomic-read.f90
M flang/test/Lower/OpenMP/atomic-update.f90
M flang/test/Lower/OpenMP/atomic-write.f90
M flang/test/Lower/OpenMP/common-atomic-lowering.f90
M flang/test/Lower/OpenMP/copyin-order.f90
M flang/test/Lower/OpenMP/copyin.f90
M flang/test/Lower/OpenMP/copyprivate2.f90
M flang/test/Lower/OpenMP/critical.f90
M flang/test/Lower/OpenMP/declare-mapper.f90
M flang/test/Lower/OpenMP/default-clause.f90
M flang/test/Lower/OpenMP/derived-type-allocatable-map.f90
M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
M flang/test/Lower/OpenMP/distribute.f90
M flang/test/Lower/OpenMP/flush.f90
M flang/test/Lower/OpenMP/generic-loop-rewriting.f90
A flang/test/Lower/OpenMP/has_device_addr-mapinfo.f90
M flang/test/Lower/OpenMP/hlfir-seqloop-parallel.f90
M flang/test/Lower/OpenMP/lastprivate-allocatable.f90
M flang/test/Lower/OpenMP/lastprivate-commonblock.f90
M flang/test/Lower/OpenMP/lastprivate-iv.f90
M flang/test/Lower/OpenMP/lastprivate-simd.f90
M flang/test/Lower/OpenMP/loop-directive.f90
A flang/test/Lower/OpenMP/loop-pointer-variable.f90
M flang/test/Lower/OpenMP/map-mapper.f90
A flang/test/Lower/OpenMP/map-modifiers.f90
M flang/test/Lower/OpenMP/math-amdgpu.f90
A flang/test/Lower/OpenMP/missing-inode.f90
M flang/test/Lower/OpenMP/order-clause.f90
M flang/test/Lower/OpenMP/parallel-lastprivate-clause-scalar.f90
M flang/test/Lower/OpenMP/parallel-private-clause-fixes.f90
M flang/test/Lower/OpenMP/parallel-private-clause.f90
M flang/test/Lower/OpenMP/parallel-reduction-allocatable-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-array-lb.f90
M flang/test/Lower/OpenMP/parallel-reduction-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-array2.f90
M flang/test/Lower/OpenMP/parallel-reduction-mixed.f90
M flang/test/Lower/OpenMP/parallel-reduction-pointer-array.f90
M flang/test/Lower/OpenMP/parallel-reduction3.f90
M flang/test/Lower/OpenMP/parallel-wsloop-firstpriv.f90
M flang/test/Lower/OpenMP/parallel-wsloop-lastpriv.f90
M flang/test/Lower/OpenMP/parallel-wsloop.f90
M flang/test/Lower/OpenMP/parallel.f90
M flang/test/Lower/OpenMP/private-commonblock.f90
M flang/test/Lower/OpenMP/private-derived-type.f90
A flang/test/Lower/OpenMP/privatization-proc-ptr.f90
A flang/test/Lower/OpenMP/real10.f90
M flang/test/Lower/OpenMP/reduction-array-intrinsic.f90
A flang/test/Lower/OpenMP/reduction-equivalence.f90
M flang/test/Lower/OpenMP/scan.f90
M flang/test/Lower/OpenMP/sections.f90
M flang/test/Lower/OpenMP/shared-loop.f90
M flang/test/Lower/OpenMP/simd.f90
M flang/test/Lower/OpenMP/simd_x86_64.f90
M flang/test/Lower/OpenMP/single.f90
M flang/test/Lower/OpenMP/stop-stmt-in-region.f90
A flang/test/Lower/OpenMP/target-map-complex.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/OpenMP/task.f90
M flang/test/Lower/OpenMP/threadprivate-char-array-chararray.f90
A flang/test/Lower/OpenMP/threadprivate-common-block-pointer.f90
M flang/test/Lower/OpenMP/threadprivate-commonblock.f90
M flang/test/Lower/OpenMP/threadprivate-default-clause.f90
M flang/test/Lower/OpenMP/threadprivate-hlfir.f90
M flang/test/Lower/OpenMP/threadprivate-host-association.f90
M flang/test/Lower/OpenMP/threadprivate-integer-different-kinds.f90
M flang/test/Lower/OpenMP/threadprivate-pointer-allocatable.f90
M flang/test/Lower/OpenMP/threadprivate-real-logical-complex-derivedtype.f90
M flang/test/Lower/OpenMP/threadprivate-use-association-2-hlfir.f90
M flang/test/Lower/OpenMP/threadprivate-use-association.f90
M flang/test/Lower/OpenMP/unstructured.f90
M flang/test/Lower/OpenMP/wsloop-chunks.f90
M flang/test/Lower/OpenMP/wsloop-collapse.f90
M flang/test/Lower/OpenMP/wsloop-monotonic.f90
M flang/test/Lower/OpenMP/wsloop-nonmonotonic.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add.f90
M flang/test/Lower/OpenMP/wsloop-reduction-allocatable-array-minmax.f90
M flang/test/Lower/OpenMP/wsloop-reduction-allocatable.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array-assumed-shape.f90
A flang/test/Lower/OpenMP/wsloop-reduction-array-lb.f90
A flang/test/Lower/OpenMP/wsloop-reduction-array-lb2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-iand.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ieor-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ieor.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-ior.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul.f90
M flang/test/Lower/OpenMP/wsloop-reduction-multiple-clauses.f90
M flang/test/Lower/OpenMP/wsloop-reduction-pointer.f90
M flang/test/Lower/OpenMP/wsloop-schedule.f90
M flang/test/Lower/OpenMP/wsloop-variable.f90
M flang/test/Lower/OpenMP/wsloop.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocate-source-allocatables-2.f90
M flang/test/Lower/array-character.f90
M flang/test/Lower/array-elemental-calls-2.f90
M flang/test/Lower/array-elemental-calls-char-byval.f90
M flang/test/Lower/array-elemental-calls-char.f90
M flang/test/Lower/c-interoperability-c-pointer.f90
M flang/test/Lower/c_ptr-constant-init.f90
M flang/test/Lower/call-by-value-attr.f90
M flang/test/Lower/call-by-value.f90
M flang/test/Lower/call-copy-in-out.f90
M flang/test/Lower/complex-operations.f90
M flang/test/Lower/components.f90
M flang/test/Lower/default-initialization.f90
M flang/test/Lower/derived-allocatable-components.f90
M flang/test/Lower/derived-pointer-components.f90
M flang/test/Lower/derived-type-finalization.f90
M flang/test/Lower/derived-type-temp.f90
M flang/test/Lower/derived-types.f90
M flang/test/Lower/entry-statement.f90
M flang/test/Lower/equivalence-1.f90
M flang/test/Lower/forall/array-pointer.f90
M flang/test/Lower/forall/character-1.f90
M flang/test/Lower/forall/forall-allocatable-2.f90
M flang/test/Lower/forall/forall-where.f90
M flang/test/Lower/identical-block-merge-disable.f90
M flang/test/Lower/intentout-deallocate.f90
M flang/test/Lower/io-asynchronous.f90
M flang/test/Lower/io-derived-type.f90
M flang/test/Lower/nullify-polymorphic.f90
M flang/test/Lower/parent-component.f90
M flang/test/Lower/pointer-assignments.f90
M flang/test/Lower/pointer-default-init.f90
M flang/test/Lower/polymorphic-temp.f90
M flang/test/Lower/polymorphic.f90
M flang/test/Lower/pre-fir-tree04.f90
A flang/test/Lower/repack-arrays-asynchronous.f90
A flang/test/Lower/repack-arrays-finalized-dummy.f90
A flang/test/Lower/repack-arrays-target.f90
A flang/test/Lower/repack-arrays.f90
M flang/test/Lower/select-type.f90
M flang/test/Lower/structure-constructors-alloc-comp.f90
M flang/test/Lower/structure-constructors.f90
M flang/test/Parser/OpenMP/declare-reduction-unparse.f90
M flang/test/Parser/OpenMP/depobj-construct.f90
M flang/test/Parser/OpenMP/doacross-clause.f90
M flang/test/Parser/OpenMP/from-clause.f90
M flang/test/Parser/OpenMP/if-clause.f90
M flang/test/Parser/OpenMP/metadirective-dirspec.f90
A flang/test/Parser/OpenMP/metadirective-flush.f90
M flang/test/Parser/OpenMP/metadirective-v50.f90
M flang/test/Parser/OpenMP/metadirective.f90
M flang/test/Parser/OpenMP/ordered-depend.f90
M flang/test/Parser/OpenMP/scan.f90
M flang/test/Parser/OpenMP/target-update-to-clause.f90
A flang/test/Parser/func-label.f
A flang/test/Preprocessing/bug126459.F90
A flang/test/Preprocessing/fd-lines-as.f90
A flang/test/Semantics/Inputs/modfile72.f90
A flang/test/Semantics/Inputs/modfile73-a.f90
A flang/test/Semantics/Inputs/modfile73-b.f90
A flang/test/Semantics/Inputs/modfile73-c.f90
A flang/test/Semantics/OpenMP/cancel.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
A flang/test/Semantics/OpenMP/declare-reduction-error.f90
M flang/test/Semantics/OpenMP/declare-reduction.f90
M flang/test/Semantics/OpenMP/depend01.f90
M flang/test/Semantics/OpenMP/depobj-construct-v50.f90
A flang/test/Semantics/OpenMP/equivalence-namelist.f90
M flang/test/Semantics/OpenMP/flush01.f90
A flang/test/Semantics/OpenMP/flush03.f90
M flang/test/Semantics/OpenMP/loop-bind.f90
M flang/test/Semantics/OpenMP/metadirective-common.f90
A flang/test/Semantics/OpenMP/single03.f90
A flang/test/Semantics/OpenMP/single04.f90
A flang/test/Semantics/OpenMP/test_taskloop_lastprivate_semantic_restrictions.f90
A flang/test/Semantics/OpenMP/test_taskloop_reduction_semantic_restrictions.f90
M flang/test/Semantics/OpenMP/threadprivate04.f90
M flang/test/Semantics/abstract02.f90
M flang/test/Semantics/allocate11.f90
M flang/test/Semantics/allocate12.f90
M flang/test/Semantics/array-constr-len.f90
M flang/test/Semantics/array-constr-values.f90
M flang/test/Semantics/assign02.f90
M flang/test/Semantics/assign11.f90
M flang/test/Semantics/associated.f90
M flang/test/Semantics/bind-c09.f90
M flang/test/Semantics/bindings01.f90
A flang/test/Semantics/bug125774.f90
A flang/test/Semantics/bug131579.f90
A flang/test/Semantics/bug396.f90
M flang/test/Semantics/c_f_pointer.f90
M flang/test/Semantics/call04.f90
M flang/test/Semantics/call06.f90
M flang/test/Semantics/call09.f90
M flang/test/Semantics/call10.f90
M flang/test/Semantics/call12.f90
M flang/test/Semantics/call24.f90
M flang/test/Semantics/call27.f90
M flang/test/Semantics/change_team01.f90
A flang/test/Semantics/change_team02.f90
M flang/test/Semantics/coarrays01.f90
A flang/test/Semantics/coarrays02.f90
M flang/test/Semantics/collectives05.f90
M flang/test/Semantics/coshape.f90
M flang/test/Semantics/critical02.f90
M flang/test/Semantics/cuf09.cuf
M flang/test/Semantics/cuf13.cuf
M flang/test/Semantics/data05.f90
M flang/test/Semantics/deallocate05.f90
M flang/test/Semantics/definable01.f90
M flang/test/Semantics/doconcurrent01.f90
M flang/test/Semantics/doconcurrent08.f90
M flang/test/Semantics/event02b.f90
M flang/test/Semantics/expr-errors06.f90
M flang/test/Semantics/form_team01.f90
M flang/test/Semantics/form_team01a.f90
M flang/test/Semantics/form_team01b.f90
M flang/test/Semantics/generic07.f90
A flang/test/Semantics/generic13.f90
A flang/test/Semantics/hostnm.f90
M flang/test/Semantics/init01.f90
M flang/test/Semantics/intrinsics01.f90
M flang/test/Semantics/io11.f90
M flang/test/Semantics/lockstmt03.f90
M flang/test/Semantics/modfile12.f90
A flang/test/Semantics/modfile72.f90
A flang/test/Semantics/modfile73.f90
A flang/test/Semantics/modfile74.f90
M flang/test/Semantics/move_alloc.f90
M flang/test/Semantics/null01.f90
A flang/test/Semantics/pdt04.f90
M flang/test/Semantics/resolve07.f90
M flang/test/Semantics/resolve105.f90
M flang/test/Semantics/resolve117.f90
M flang/test/Semantics/resolve34.f90
M flang/test/Semantics/resolve40.f90
M flang/test/Semantics/resolve50.f90
M flang/test/Semantics/resolve55.f90
M flang/test/Semantics/resolve88.f90
M flang/test/Semantics/resolve94.f90
M flang/test/Semantics/structconst03.f90
M flang/test/Semantics/structconst04.f90
M flang/test/Semantics/symbol09.f90
M flang/test/Semantics/this_image01.f90
A flang/test/Transforms/debug-associate-component.fir
A flang/test/Transforms/debug-dummy-argument.fir
A flang/test/Transforms/do_concurrent-to-do_loop-unodered.fir
M flang/test/Transforms/generic-loop-rewriting-todo.mlir
M flang/test/Transforms/omp-map-info-finalization-implicit-field.fir
M flang/test/Transforms/omp-map-info-finalization.fir
A flang/test/Transforms/simplify-fir-operations.fir
M flang/test/Transforms/simplifyintrinsics.fir
M flang/test/Transforms/stack-arrays-hlfir.f90
M flang/tools/bbc/bbc.cpp
M flang/tools/f18/CMakeLists.txt
M flang/tools/flang-driver/CMakeLists.txt
M flang/tools/flang-driver/fc1_main.cpp
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCArchitectures.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/cmake/modules/prepare_libc_gpu_build.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/config.json
M libc/config/darwin/arm/entrypoints.txt
M libc/config/gpu/amdgpu/config.json
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/config.json
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/aarch64/headers.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/linux/x86_64/headers.txt
A libc/config/uefi/config.json
A libc/config/uefi/entrypoints.txt
A libc/config/uefi/headers.txt
M libc/config/windows/entrypoints.txt
M libc/docs/CMakeLists.txt
M libc/docs/configure.rst
M libc/docs/dev/header_generation.rst
M libc/docs/dev/undefined_behavior.rst
M libc/docs/getting_started.rst
M libc/docs/gpu/rpc.rst
M libc/docs/headers/index.rst
M libc/docs/headers/math/index.rst
R libc/docs/headers/math/stdfix.rst
A libc/docs/headers/stdfix.rst
M libc/docs/index.rst
M libc/docs/talks.rst
A libc/docs/uefi/building.rst
A libc/docs/uefi/index.rst
A libc/docs/uefi/support.rst
A libc/docs/uefi/testing.rst
A libc/docs/uefi/using.rst
M libc/hdr/CMakeLists.txt
A libc/hdr/locale_macros.h
A libc/hdr/sched_macros.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/cpu_set_t.h
A libc/hdr/types/struct_dl_phdr_info.h
M libc/hdr/wchar_overlay.h
M libc/include/CMakeLists.txt
A libc/include/Uefi.h.def
A libc/include/Uefi.yaml
R libc/include/link.h.def
M libc/include/link.yaml
M libc/include/llvm-libc-macros/CMakeLists.txt
A libc/include/llvm-libc-macros/EFIAPI-macros.h
M libc/include/llvm-libc-macros/linux/sched-macros.h
M libc/include/llvm-libc-macros/stdfix-macros.h
A libc/include/llvm-libc-macros/sysexits-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/EFI_ALLOCATE_TYPE.h
A libc/include/llvm-libc-types/EFI_BOOT_SERVICES.h
A libc/include/llvm-libc-types/EFI_CAPSULE.h
A libc/include/llvm-libc-types/EFI_CONFIGURATION_TABLE.h
A libc/include/llvm-libc-types/EFI_DEVICE_PATH_PROTOCOL.h
A libc/include/llvm-libc-types/EFI_EVENT.h
A libc/include/llvm-libc-types/EFI_GUID.h
A libc/include/llvm-libc-types/EFI_HANDLE.h
A libc/include/llvm-libc-types/EFI_INTERFACE_TYPE.h
A libc/include/llvm-libc-types/EFI_LOCATE_SEARCH_TYPE.h
A libc/include/llvm-libc-types/EFI_MEMORY_DESCRIPTOR.h
A libc/include/llvm-libc-types/EFI_MEMORY_TYPE.h
A libc/include/llvm-libc-types/EFI_OPEN_PROTOCOL_INFORMATION_ENTRY.h
A libc/include/llvm-libc-types/EFI_PHYSICAL_ADDRESS.h
A libc/include/llvm-libc-types/EFI_RUNTIME_SERVICES.h
A libc/include/llvm-libc-types/EFI_SIMPLE_TEXT_INPUT_PROTOCOL.h
A libc/include/llvm-libc-types/EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL.h
A libc/include/llvm-libc-types/EFI_STATUS.h
A libc/include/llvm-libc-types/EFI_SYSTEM_TABLE.h
A libc/include/llvm-libc-types/EFI_TABLE_HEADER.h
A libc/include/llvm-libc-types/EFI_TIME.h
A libc/include/llvm-libc-types/EFI_TIMER_DELAY.h
A libc/include/llvm-libc-types/EFI_TPL.h
A libc/include/llvm-libc-types/EFI_VIRTUAL_ADDRESS.h
A libc/include/llvm-libc-types/__dl_iterate_phdr_callback_t.h
M libc/include/llvm-libc-types/cpu_set_t.h
A libc/include/llvm-libc-types/struct_dl_phdr_info.h
M libc/include/math.yaml
M libc/include/search.yaml
M libc/include/stdfix.yaml
M libc/include/strings.yaml
A libc/include/sysexits.h.def
A libc/include/sysexits.yaml
M libc/shared/rpc_opcodes.h
A libc/shared/rpc_server.h
M libc/src/CMakeLists.txt
M libc/src/__support/CPP/atomic.h
M libc/src/__support/CPP/bit.h
M libc/src/__support/CPP/span.h
M libc/src/__support/CPP/string.h
M libc/src/__support/CPP/string_view.h
M libc/src/__support/FPUtil/FMA.h
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/FPUtil/NormalFloat.h
M libc/src/__support/FPUtil/aarch64/FEnvImpl.h
M libc/src/__support/FPUtil/aarch64/fenv_darwin_impl.h
M libc/src/__support/FPUtil/double_double.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/FPUtil/generic/CMakeLists.txt
M libc/src/__support/FPUtil/generic/add_sub.h
M libc/src/__support/FPUtil/generic/sqrt_80_bit_long_double.h
M libc/src/__support/FPUtil/multiply_add.h
M libc/src/__support/OSUtil/darwin/io.h
M libc/src/__support/OSUtil/io.h
A libc/src/__support/OSUtil/uefi/CMakeLists.txt
A libc/src/__support/OSUtil/uefi/exit.cpp
A libc/src/__support/OSUtil/uefi/io.cpp
A libc/src/__support/OSUtil/uefi/io.h
A libc/src/__support/RPC/rpc_server.h
M libc/src/__support/big_int.h
M libc/src/__support/fixed_point/fx_bits.h
M libc/src/__support/float_to_string.h
M libc/src/__support/high_precision_decimal.h
M libc/src/__support/integer_literals.h
M libc/src/__support/integer_to_string.h
M libc/src/__support/macros/properties/cpu_features.h
M libc/src/__support/math_extras.h
M libc/src/__support/memory_size.h
M libc/src/__support/str_to_float.h
M libc/src/__support/str_to_integer.h
A libc/src/link/CMakeLists.txt
A libc/src/link/dl_iterate_phdr.cpp
A libc/src/link/dl_iterate_phdr.h
M libc/src/locale/CMakeLists.txt
M libc/src/locale/duplocale.cpp
M libc/src/locale/freelocale.cpp
M libc/src/locale/locale.cpp
M libc/src/locale/newlocale.cpp
M libc/src/locale/newlocale.h
M libc/src/locale/setlocale.cpp
M libc/src/locale/setlocale.h
M libc/src/math/CMakeLists.txt
A libc/src/math/acoshf16.h
A libc/src/math/fmaf16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/acosf.cpp
M libc/src/math/generic/acosf16.cpp
M libc/src/math/generic/acoshf.cpp
A libc/src/math/generic/acoshf16.cpp
M libc/src/math/generic/asinf.cpp
M libc/src/math/generic/asinhf.cpp
A libc/src/math/generic/atan.cpp
M libc/src/math/generic/atan2.cpp
M libc/src/math/generic/atan2f.cpp
A libc/src/math/generic/atan_utils.h
M libc/src/math/generic/atanf.cpp
M libc/src/math/generic/cbrt.cpp
M libc/src/math/generic/cbrtf.cpp
M libc/src/math/generic/common_constants.cpp
M libc/src/math/generic/cos.cpp
M libc/src/math/generic/cosf.cpp
M libc/src/math/generic/cosf16.cpp
M libc/src/math/generic/coshf16.cpp
M libc/src/math/generic/cospif.cpp
M libc/src/math/generic/erff.cpp
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/exp10.cpp
M libc/src/math/generic/exp10f16.cpp
M libc/src/math/generic/exp10m1f.cpp
M libc/src/math/generic/exp10m1f16.cpp
M libc/src/math/generic/exp2.cpp
M libc/src/math/generic/exp2f16.cpp
M libc/src/math/generic/exp2f_impl.h
M libc/src/math/generic/exp2m1f.cpp
M libc/src/math/generic/exp2m1f16.cpp
M libc/src/math/generic/expf.cpp
M libc/src/math/generic/expf16.cpp
M libc/src/math/generic/explogxf.cpp
M libc/src/math/generic/explogxf.h
M libc/src/math/generic/expm1f.cpp
M libc/src/math/generic/expm1f16.cpp
A libc/src/math/generic/fmaf16.cpp
M libc/src/math/generic/fmul.cpp
M libc/src/math/generic/hypotf.cpp
M libc/src/math/generic/log.cpp
M libc/src/math/generic/log10.cpp
M libc/src/math/generic/log10f.cpp
M libc/src/math/generic/log10f16.cpp
M libc/src/math/generic/log1p.cpp
M libc/src/math/generic/log1pf.cpp
M libc/src/math/generic/log2.cpp
M libc/src/math/generic/log2f.cpp
M libc/src/math/generic/log2f16.cpp
M libc/src/math/generic/logf.cpp
M libc/src/math/generic/logf16.cpp
M libc/src/math/generic/pow.cpp
M libc/src/math/generic/powf.cpp
M libc/src/math/generic/range_reduction_double_common.h
M libc/src/math/generic/range_reduction_double_fma.h
M libc/src/math/generic/range_reduction_double_nofma.h
M libc/src/math/generic/sin.cpp
M libc/src/math/generic/sincos.cpp
M libc/src/math/generic/sincos_eval.h
M libc/src/math/generic/sincosf.cpp
M libc/src/math/generic/sincosf16_utils.h
M libc/src/math/generic/sincosf_utils.h
M libc/src/math/generic/sinf.cpp
M libc/src/math/generic/sinf16.cpp
M libc/src/math/generic/sinhf.cpp
M libc/src/math/generic/sinhf16.cpp
M libc/src/math/generic/tan.cpp
M libc/src/math/generic/tanf.cpp
M libc/src/math/generic/tanf16.cpp
M libc/src/math/generic/tanhf16.cpp
M libc/src/math/generic/tanpif16.cpp
M libc/src/sched/CMakeLists.txt
M libc/src/sched/linux/CMakeLists.txt
M libc/src/sched/linux/sched_getcpucount.cpp
A libc/src/sched/linux/sched_getcpuisset.cpp
A libc/src/sched/linux/sched_setcpuset.cpp
A libc/src/sched/linux/sched_setcpuzero.cpp
A libc/src/sched/sched_getcpuisset.h
A libc/src/sched/sched_setcpuset.h
A libc/src/sched/sched_setcpuzero.h
M libc/src/search/CMakeLists.txt
M libc/src/search/lfind.cpp
A libc/src/search/lsearch.cpp
A libc/src/search/lsearch.h
M libc/src/stdfix/CMakeLists.txt
A libc/src/stdfix/bitshk.cpp
A libc/src/stdfix/bitshk.h
A libc/src/stdfix/bitshr.cpp
A libc/src/stdfix/bitshr.h
A libc/src/stdfix/bitsk.cpp
A libc/src/stdfix/bitsk.h
A libc/src/stdfix/bitslk.cpp
A libc/src/stdfix/bitslk.h
A libc/src/stdfix/bitslr.cpp
A libc/src/stdfix/bitslr.h
A libc/src/stdfix/bitsr.cpp
A libc/src/stdfix/bitsr.h
A libc/src/stdfix/bitsuhk.cpp
A libc/src/stdfix/bitsuhk.h
A libc/src/stdfix/bitsuhr.cpp
A libc/src/stdfix/bitsuhr.h
A libc/src/stdfix/bitsuk.cpp
A libc/src/stdfix/bitsuk.h
A libc/src/stdfix/bitsulk.cpp
A libc/src/stdfix/bitsulk.h
A libc/src/stdfix/bitsulr.cpp
A libc/src/stdfix/bitsulr.h
A libc/src/stdfix/bitsur.cpp
A libc/src/stdfix/bitsur.h
A libc/src/stdfix/bitusk.cpp
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/baremetal/CMakeLists.txt
M libc/src/stdio/baremetal/getchar.cpp
M libc/src/stdio/baremetal/printf.cpp
A libc/src/stdio/baremetal/scanf.cpp
A libc/src/stdio/baremetal/scanf_internal.h
M libc/src/stdio/baremetal/vprintf.cpp
A libc/src/stdio/baremetal/vscanf.cpp
R libc/src/stdio/fscanf.cpp
M libc/src/stdio/generic/CMakeLists.txt
A libc/src/stdio/generic/fscanf.cpp
A libc/src/stdio/generic/scanf.cpp
A libc/src/stdio/generic/vfscanf.cpp
A libc/src/stdio/generic/vscanf.cpp
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/char_converter.h
R libc/src/stdio/printf_core/converter.cpp
M libc/src/stdio/printf_core/converter.h
M libc/src/stdio/printf_core/fixed_converter.h
M libc/src/stdio/printf_core/float_dec_converter.h
M libc/src/stdio/printf_core/float_dec_converter_limited.h
M libc/src/stdio/printf_core/float_hex_converter.h
M libc/src/stdio/printf_core/float_inf_nan_converter.h
M libc/src/stdio/printf_core/int_converter.h
M libc/src/stdio/printf_core/parser.h
R libc/src/stdio/printf_core/printf_main.cpp
M libc/src/stdio/printf_core/printf_main.h
M libc/src/stdio/printf_core/ptr_converter.h
M libc/src/stdio/printf_core/strerror_converter.h
M libc/src/stdio/printf_core/string_converter.h
M libc/src/stdio/printf_core/vasprintf_internal.h
M libc/src/stdio/printf_core/vfprintf_internal.h
M libc/src/stdio/printf_core/write_int_converter.h
R libc/src/stdio/printf_core/writer.cpp
M libc/src/stdio/printf_core/writer.h
R libc/src/stdio/scanf.cpp
M libc/src/stdio/scanf_core/CMakeLists.txt
R libc/src/stdio/scanf_core/converter.cpp
M libc/src/stdio/scanf_core/converter.h
M libc/src/stdio/scanf_core/current_pos_converter.h
R libc/src/stdio/scanf_core/float_converter.cpp
M libc/src/stdio/scanf_core/float_converter.h
R libc/src/stdio/scanf_core/int_converter.cpp
M libc/src/stdio/scanf_core/int_converter.h
M libc/src/stdio/scanf_core/parser.h
R libc/src/stdio/scanf_core/ptr_converter.cpp
M libc/src/stdio/scanf_core/ptr_converter.h
M libc/src/stdio/scanf_core/reader.h
R libc/src/stdio/scanf_core/scanf_main.cpp
M libc/src/stdio/scanf_core/scanf_main.h
R libc/src/stdio/scanf_core/string_converter.cpp
M libc/src/stdio/scanf_core/string_converter.h
A libc/src/stdio/scanf_core/string_reader.h
M libc/src/stdio/scanf_core/vfscanf_internal.h
M libc/src/stdio/snprintf.cpp
M libc/src/stdio/sprintf.cpp
M libc/src/stdio/sscanf.cpp
R libc/src/stdio/vfscanf.cpp
R libc/src/stdio/vscanf.cpp
M libc/src/stdio/vsnprintf.cpp
M libc/src/stdio/vsprintf.cpp
M libc/src/stdio/vsscanf.cpp
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/a64l.cpp
A libc/src/stdlib/l64a.cpp
A libc/src/stdlib/l64a.h
M libc/src/stdlib/qsort_pivot.h
M libc/src/stdlib/quick_sort.h
M libc/src/stdlib/str_from_util.h
M libc/src/stdlib/strfromd.cpp
M libc/src/stdlib/strfromf.cpp
M libc/src/stdlib/strfroml.cpp
M libc/src/string/memory_utils/generic/byte_per_byte.h
M libc/src/string/memory_utils/inline_bcmp.h
M libc/src/string/memory_utils/inline_memcmp.h
M libc/src/string/memory_utils/inline_memcpy.h
M libc/src/string/memory_utils/inline_memmove.h
M libc/src/string/memory_utils/inline_memset.h
M libc/src/string/memory_utils/utils.h
M libc/src/string/string_utils.h
M libc/src/strings/CMakeLists.txt
A libc/src/strings/ffs.cpp
A libc/src/strings/ffs.h
A libc/src/strings/ffsl.cpp
A libc/src/strings/ffsl.h
A libc/src/strings/ffsll.cpp
A libc/src/strings/ffsll.h
A libc/src/strings/strcasecmp_l.cpp
A libc/src/strings/strcasecmp_l.h
A libc/src/strings/strncasecmp_l.cpp
A libc/src/strings/strncasecmp_l.h
M libc/src/time/mktime.cpp
M libc/src/time/strftime.cpp
M libc/src/time/strftime_core/CMakeLists.txt
M libc/src/time/strftime_core/composite_converter.h
R libc/src/time/strftime_core/converter.cpp
M libc/src/time/strftime_core/converter.h
M libc/src/time/strftime_core/num_converter.h
M libc/src/time/strftime_core/str_converter.h
R libc/src/time/strftime_core/strftime_main.cpp
M libc/src/time/strftime_core/strftime_main.h
M libc/src/time/strftime_l.cpp
M libc/src/time/time_utils.cpp
M libc/src/time/time_utils.h
M libc/startup/gpu/CMakeLists.txt
M libc/test/UnitTest/CMakeLists.txt
A libc/test/UnitTest/ErrnoCheckingTest.h
M libc/test/UnitTest/ErrnoSetterMatcher.h
M libc/test/UnitTest/ExecuteFunction.h
M libc/test/UnitTest/ExecuteFunctionUnix.cpp
M libc/test/UnitTest/LibcTest.cpp
M libc/test/UnitTest/MemoryMatcher.h
M libc/test/UnitTest/Test.h
M libc/test/UnitTest/ZxTest.h
M libc/test/integration/src/pthread/pthread_rwlock_test.cpp
M libc/test/integration/startup/gpu/rpc_stream_test.cpp
M libc/test/integration/startup/gpu/rpc_test.cpp
M libc/test/src/__support/CMakeLists.txt
M libc/test/src/__support/CPP/atomic_test.cpp
M libc/test/src/__support/CPP/bit_test.cpp
M libc/test/src/__support/HashTable/table_test.cpp
M libc/test/src/__support/arg_list_test.cpp
M libc/test/src/__support/big_int_test.cpp
M libc/test/src/__support/blockstore_test.cpp
M libc/test/src/__support/fixed_point/fx_bits_test.cpp
M libc/test/src/__support/fixedvector_test.cpp
M libc/test/src/__support/hash_test.cpp
M libc/test/src/__support/integer_to_string_test.cpp
M libc/test/src/__support/math_extras_test.cpp
M libc/test/src/__support/str_to_double_test.cpp
M libc/test/src/__support/str_to_float_test.cpp
M libc/test/src/__support/str_to_fp_test.h
M libc/test/src/complex/CImagTest.h
M libc/test/src/complex/CRealTest.h
M libc/test/src/fcntl/openat_test.cpp
M libc/test/src/locale/CMakeLists.txt
M libc/test/src/locale/locale_test.cpp
M libc/test/src/locale/localeconv_test.cpp
M libc/test/src/math/AddTest.h
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/CopySignTest.h
M libc/test/src/math/FMaxTest.h
M libc/test/src/math/FMinTest.h
M libc/test/src/math/FModTest.h
M libc/test/src/math/FmaTest.h
M libc/test/src/math/FrexpTest.h
M libc/test/src/math/NextAfterTest.h
M libc/test/src/math/SubTest.h
A libc/test/src/math/acoshf16_test.cpp
A libc/test/src/math/add_same_type_test.cpp
A libc/test/src/math/atan_test.cpp
M libc/test/src/math/exhaustive/exhaustive_test.h
M libc/test/src/math/exhaustive/fmod_generic_impl_test.cpp
M libc/test/src/math/exhaustive/hypotf_test.cpp
A libc/test/src/math/fmaf16_test.cpp
M libc/test/src/math/smoke/AddTest.h
M libc/test/src/math/smoke/CMakeLists.txt
M libc/test/src/math/smoke/FmaTest.h
M libc/test/src/math/smoke/NextAfterTest.h
M libc/test/src/math/smoke/NextTowardTest.h
M libc/test/src/math/smoke/SubTest.h
A libc/test/src/math/smoke/acoshf16_test.cpp
A libc/test/src/math/smoke/add_same_type_test.cpp
A libc/test/src/math/smoke/atan_test.cpp
A libc/test/src/math/smoke/fmaf16_test.cpp
M libc/test/src/math/smoke/sqrtf128_test.cpp
A libc/test/src/math/smoke/sub_same_type_test.cpp
A libc/test/src/math/sub_same_type_test.cpp
M libc/test/src/search/CMakeLists.txt
A libc/test/src/search/lsearch_test.cpp
M libc/test/src/stdbit/stdc_first_trailing_one_uc_test.cpp
M libc/test/src/stdbit/stdc_first_trailing_one_ui_test.cpp
M libc/test/src/stdbit/stdc_first_trailing_one_ul_test.cpp
M libc/test/src/stdbit/stdc_first_trailing_one_ull_test.cpp
M libc/test/src/stdbit/stdc_first_trailing_one_us_test.cpp
A libc/test/src/stdfix/BitsFxTest.h
M libc/test/src/stdfix/CMakeLists.txt
A libc/test/src/stdfix/bitshk_test.cpp
A libc/test/src/stdfix/bitshr_test.cpp
A libc/test/src/stdfix/bitsk_test.cpp
A libc/test/src/stdfix/bitslk_test.cpp
A libc/test/src/stdfix/bitslr_test.cpp
A libc/test/src/stdfix/bitsr_test.cpp
A libc/test/src/stdfix/bitsuhk_test.cpp
A libc/test/src/stdfix/bitsuhr_test.cpp
A libc/test/src/stdfix/bitsuk_test.cpp
A libc/test/src/stdfix/bitsulk_test.cpp
A libc/test/src/stdfix/bitsulr_test.cpp
A libc/test/src/stdfix/bitsur_test.cpp
A libc/test/src/stdfix/macros_test.cpp
M libc/test/src/stdio/fileop_test.cpp
M libc/test/src/stdio/printf_core/converter_test.cpp
M libc/test/src/stdio/printf_core/parser_test.cpp
M libc/test/src/stdio/printf_core/writer_test.cpp
M libc/test/src/stdio/scanf_core/CMakeLists.txt
M libc/test/src/stdio/scanf_core/converter_test.cpp
M libc/test/src/stdio/scanf_core/reader_test.cpp
M libc/test/src/stdio/sscanf_test.cpp
M libc/test/src/stdlib/CMakeLists.txt
M libc/test/src/stdlib/SortingTest.h
M libc/test/src/stdlib/StrfromTest.h
A libc/test/src/stdlib/l64a_test.cpp
M libc/test/src/string/memcpy_test.cpp
M libc/test/src/string/memmove_test.cpp
M libc/test/src/string/memory_utils/memory_check_utils.h
M libc/test/src/string/memory_utils/op_tests.cpp
M libc/test/src/string/memory_utils/utils_test.cpp
M libc/test/src/string/memset_test.cpp
M libc/test/src/strings/CMakeLists.txt
M libc/test/src/strings/bcopy_test.cpp
A libc/test/src/strings/ffs_test.cpp
A libc/test/src/strings/ffsl_test.cpp
A libc/test/src/strings/ffsll_test.cpp
A libc/test/src/strings/strcasecmp_l_test.cpp
A libc/test/src/strings/strncasecmp_l_test.cpp
M libc/test/src/sys/epoll/linux/CMakeLists.txt
M libc/test/src/sys/epoll/linux/epoll_create1_test.cpp
M libc/test/src/sys/epoll/linux/epoll_create_test.cpp
M libc/test/src/sys/epoll/linux/epoll_ctl_test.cpp
M libc/test/src/sys/epoll/linux/epoll_pwait2_test.cpp
M libc/test/src/sys/epoll/linux/epoll_pwait_test.cpp
M libc/test/src/sys/epoll/linux/epoll_wait_test.cpp
M libc/test/src/sys/random/linux/getrandom_test.cpp
M libc/test/src/sys/socket/linux/CMakeLists.txt
M libc/test/src/sys/socket/linux/bind_test.cpp
M libc/test/src/sys/socket/linux/send_recv_test.cpp
M libc/test/src/sys/socket/linux/sendmsg_recvmsg_test.cpp
M libc/test/src/sys/socket/linux/sendto_recvfrom_test.cpp
M libc/test/src/sys/socket/linux/socket_test.cpp
M libc/test/src/sys/socket/linux/socketpair_test.cpp
M libc/test/src/sys/uio/readv_test.cpp
M libc/test/src/sys/uio/writev_test.cpp
M libc/test/src/time/strftime_test.cpp
M libc/test/src/unistd/CMakeLists.txt
M libc/test/src/unistd/access_test.cpp
M libc/test/src/unistd/chdir_test.cpp
M libc/test/src/unistd/dup2_test.cpp
M libc/test/src/unistd/dup3_test.cpp
M libc/test/src/unistd/dup_test.cpp
M libc/test/src/unistd/fchdir_test.cpp
M libc/test/src/unistd/fpathconf_test.cpp
M libc/test/src/unistd/ftruncate_test.cpp
M libc/test/src/unistd/getentropy_test.cpp
M libc/test/src/unistd/getsid_test.cpp
M libc/test/src/unistd/isatty_test.cpp
M libc/test/src/unistd/link_test.cpp
M libc/test/src/unistd/linkat_test.cpp
M libc/test/src/unistd/lseek_test.cpp
M libc/test/src/unistd/pathconf_test.cpp
M libc/test/src/unistd/pipe2_test.cpp
M libc/test/src/unistd/pipe_test.cpp
M libc/test/src/unistd/pread_pwrite_test.cpp
M libc/test/src/unistd/read_write_test.cpp
M libc/test/src/unistd/readlink_test.cpp
M libc/test/src/unistd/readlinkat_test.cpp
M libc/test/src/unistd/rmdir_test.cpp
M libc/test/src/unistd/symlink_test.cpp
M libc/test/src/unistd/symlinkat_test.cpp
M libc/test/src/unistd/syscall_test.cpp
M libc/test/src/unistd/truncate_test.cpp
M libc/test/src/unistd/unlink_test.cpp
M libc/test/src/unistd/unlinkat_test.cpp
M libc/utils/MPCWrapper/CMakeLists.txt
M libc/utils/MPCWrapper/MPCUtils.cpp
M libc/utils/MPCWrapper/MPCUtils.h
A libc/utils/MPCWrapper/mpc_inc.h
M libc/utils/MPFRWrapper/MPCommon.cpp
M libc/utils/MPFRWrapper/MPFRUtils.cpp
A libc/utils/docgen/dirent.yaml
A libc/utils/docgen/glob.yaml
A libc/utils/docgen/sys/utsname.yaml
R libc/utils/gpu/CMakeLists.txt
R libc/utils/gpu/loader/CMakeLists.txt
R libc/utils/gpu/loader/Loader.h
R libc/utils/gpu/loader/Main.cpp
R libc/utils/gpu/loader/amdgpu/CMakeLists.txt
R libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
R libc/utils/gpu/loader/nvptx/CMakeLists.txt
R libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
R libc/utils/gpu/server/CMakeLists.txt
R libc/utils/gpu/server/rpc_server.cpp
R libc/utils/hdrgen/enumeration.py
R libc/utils/hdrgen/function.py
R libc/utils/hdrgen/gpu_headers.py
A libc/utils/hdrgen/hdrgen/__init__.py
A libc/utils/hdrgen/hdrgen/enumeration.py
A libc/utils/hdrgen/hdrgen/function.py
A libc/utils/hdrgen/hdrgen/gpu_headers.py
A libc/utils/hdrgen/hdrgen/header.py
A libc/utils/hdrgen/hdrgen/macro.py
A libc/utils/hdrgen/hdrgen/main.py
A libc/utils/hdrgen/hdrgen/object.py
A libc/utils/hdrgen/hdrgen/type.py
A libc/utils/hdrgen/hdrgen/yaml_functions_sorted.py
A libc/utils/hdrgen/hdrgen/yaml_to_classes.py
R libc/utils/hdrgen/header.py
R libc/utils/hdrgen/macro.py
M libc/utils/hdrgen/main.py
R libc/utils/hdrgen/object.py
R libc/utils/hdrgen/type.py
R libc/utils/hdrgen/yaml_functions_sorted.py
M libc/utils/hdrgen/yaml_to_classes.py
M libclc/CMakeLists.txt
M libclc/amdgcn-amdhsa/lib/workitem/get_global_size.cl
M libclc/amdgcn-amdhsa/lib/workitem/get_local_size.cl
M libclc/amdgcn-amdhsa/lib/workitem/get_num_groups.cl
M libclc/amdgcn/lib/SOURCES
M libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.ll
M libclc/amdgcn/lib/math/fmax.cl
M libclc/amdgcn/lib/math/fmin.cl
R libclc/amdgcn/lib/math/ldexp.cl
M libclc/amdgcn/lib/mem_fence/fence.cl
M libclc/amdgcn/lib/synchronization/barrier.cl
M libclc/amdgcn/lib/workitem/get_global_offset.cl
M libclc/amdgcn/lib/workitem/get_global_size.cl
M libclc/amdgcn/lib/workitem/get_group_id.cl
M libclc/amdgcn/lib/workitem/get_local_id.cl
M libclc/amdgcn/lib/workitem/get_local_size.cl
M libclc/amdgcn/lib/workitem/get_num_groups.cl
M libclc/amdgcn/lib/workitem/get_work_dim.cl
M libclc/amdgpu/lib/SOURCES
M libclc/amdgpu/lib/math/half_exp.cl
M libclc/amdgpu/lib/math/half_exp10.cl
M libclc/amdgpu/lib/math/half_exp2.cl
M libclc/amdgpu/lib/math/half_log.cl
M libclc/amdgpu/lib/math/half_log10.cl
M libclc/amdgpu/lib/math/half_log2.cl
M libclc/amdgpu/lib/math/half_native_unary.inc
M libclc/amdgpu/lib/math/half_recip.cl
M libclc/amdgpu/lib/math/half_rsqrt.cl
M libclc/amdgpu/lib/math/half_sqrt.cl
M libclc/amdgpu/lib/math/native_exp.cl
M libclc/amdgpu/lib/math/native_exp.inc
M libclc/amdgpu/lib/math/native_log.cl
M libclc/amdgpu/lib/math/native_log.inc
M libclc/amdgpu/lib/math/native_log10.cl
M libclc/amdgpu/lib/math/native_log10.inc
R libclc/amdgpu/lib/math/sqrt.cl
M libclc/amdgpu/lib/shared/vload_half_helpers.ll
M libclc/amdgpu/lib/shared/vstore_half_helpers.ll
M libclc/clc/include/clc/clc_as_type.h
M libclc/clc/include/clc/clc_convert.h
M libclc/clc/include/clc/clcfunc.h
M libclc/clc/include/clc/clcmacro.h
M libclc/clc/include/clc/clctypes.h
M libclc/clc/include/clc/common/clc_degrees.h
M libclc/clc/include/clc/common/clc_radians.h
M libclc/clc/include/clc/common/clc_sign.h
M libclc/clc/include/clc/common/clc_smoothstep.h
M libclc/clc/include/clc/common/clc_smoothstep.inc
M libclc/clc/include/clc/float/definitions.h
M libclc/clc/include/clc/geometric/clc_dot.h
M libclc/clc/include/clc/geometric/clc_dot.inc
M libclc/clc/include/clc/geometric/floatn.inc
M libclc/clc/include/clc/integer/clc_abs.h
M libclc/clc/include/clc/integer/clc_abs.inc
M libclc/clc/include/clc/integer/clc_abs_diff.h
M libclc/clc/include/clc/integer/clc_abs_diff.inc
M libclc/clc/include/clc/integer/clc_add_sat.h
M libclc/clc/include/clc/integer/clc_clz.h
M libclc/clc/include/clc/integer/clc_hadd.h
M libclc/clc/include/clc/integer/clc_mad24.h
M libclc/clc/include/clc/integer/clc_mad_hi.h
M libclc/clc/include/clc/integer/clc_mad_sat.h
M libclc/clc/include/clc/integer/clc_mul24.h
M libclc/clc/include/clc/integer/clc_mul_hi.h
M libclc/clc/include/clc/integer/clc_popcount.h
M libclc/clc/include/clc/integer/clc_rhadd.h
M libclc/clc/include/clc/integer/clc_rotate.h
M libclc/clc/include/clc/integer/clc_sub_sat.h
M libclc/clc/include/clc/integer/clc_upsample.h
M libclc/clc/include/clc/integer/definitions.h
M libclc/clc/include/clc/integer/gentype.inc
M libclc/clc/include/clc/integer/gentype24.inc
M libclc/clc/include/clc/internal/clc.h
M libclc/clc/include/clc/internal/math/clc_sw_fma.h
M libclc/clc/include/clc/math/binary_decl_with_scalar_second_arg.inc
A libclc/clc/include/clc/math/clc_acos.h
A libclc/clc/include/clc/math/clc_acospi.h
A libclc/clc/include/clc/math/clc_asin.h
A libclc/clc/include/clc/math/clc_asinpi.h
A libclc/clc/include/clc/math/clc_atan.h
A libclc/clc/include/clc/math/clc_atanpi.h
M libclc/clc/include/clc/math/clc_ceil.h
M libclc/clc/include/clc/math/clc_copysign.h
R runtimes/cmake/Modules/FindLibcCommonUtils.cmake
Log Message:
-----------
nits
Created using spr 1.3.4
Compare: https://github.com/llvm/llvm-project/compare/cf4d310eab70...d4370dce4e30
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