aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2025-11-11Update mlir/lib/CAPI/Dialect/CMakeLists.txtusers/makslevental/ptr-dialectpythonMaksim Levental1-1/+1
Co-authored-by: Fabian Mora <fmora.dev@gmail.com>
2025-11-11[MLIR][Python] enable ptr dialect bindingsmakslevental8-10/+208
2025-11-09[MLIR][BufferResultsToOutParamsPass] Add Option to Modify Public Function's ↵Veera4-2/+54
Signature (#167248) Since https://github.com/llvm/llvm-project/pull/162441, `buffer-results-to-out-params` transforms `private` functions only. But, as mentioned in https://github.com/llvm/llvm-project/pull/162441#issuecomment-3404195242, this is a breaking change for pipelines handling C code. Our pipeline @EfficientComputer is also affected by this breaking change. Therefore, this PR adds an opt-in flag to allow `public` functions to be transformed by `BufferResultsToOutParamsPass`.
2025-11-09[clang-tidy][NFC] Enable `performance-unnecessary-value-param` in the ↵Victor Chernyakin26-58/+59
codebase (#163686) Closes #156156. In a few cases, instead of just applying the fix-it and making parameters const references to owning type, I refactored them to be non-owning types.
2025-11-10[Hexagon] Implement isMaskAndCmp0FoldingBeneficial (#166891)Sudharsan Veeravalli3-0/+80
Sink `and` mask to `cmp` use block if it is masking a single bit since this will fold the `and/cmp/br` into a single `tstbit` instruction.
2025-11-10[Flang] Add parser support for prefetch directive (#139702)Thirumalai Shaktivel8-1/+103
Implementation details: * Recognize prefetch directive in the parser as `!dir$ prefetch ...` * Unparse the prefetch directive * Add required tests Details on the prefetch directive: `!dir$ prefetch designator[, designator]...`, where the designator list can be a variable or an array reference. This directive is used to insert a hint to the code generator to prefetch instructions for memory references.
2025-11-10[llvm][RISCV] Support Zvfbfa codegen for fneg, fabs and copysign (#166944)Brandon Wu14-179/+3344
This is first patch for Zvfbfa codegen and I'm going to break it down to several patches to make it easier to reivew. The codegen supports both scalable vector and fixed length vector on both native operations and vp intrinsics.
2025-11-10[LoongArch] Initial implementation for `enableMemCmpExpansion` hook (#166526)ZhaoQi5-1253/+4255
After overriding `TargetTransformInfo::enableMemCmpExpansion` in this commit, `MergeICmps` and `ExpandMemCmp` passes will be enabled on LoongArch.
2025-11-10Revert "[Github] Update PR labeller to v6.0.1 (#167246)"Aiden Grossman2-1131/+813
This reverts commit 10da6ab5362158c1f63e0c8eaa893c55b49dc3f4. This also caused workflow failures. 1. https://github.com/llvm/llvm-project/actions/runs/19218607216
2025-11-09[Github] Make Windows container use zstd (#167022)Aiden Grossman1-6/+10
This enables much faster image unpack times. We benchmarked 20-30% improvements when testing this initially. Use skopeo to copy the image as it just works over the docker-archive/OCI container formats and does not need to unpack the image to upload it.
2025-11-09[Github] Update PR labeller to v6.0.1 (#167246)Aiden Grossman2-813/+1131
This was reverted earlier due to me not realizing that the config format also changed. This patch updates the config to match the new format and bumps the version.
2025-11-10[mlir][tosa] Fix crash in `tosa.concat` verifier (#165966)Longsheng Mou2-1/+14
The `tosa.concat` verifier crashed when the output rank did not match the input rank. This PR adds a proper check and error emission to prevent the crash. Fixes #159742.
2025-11-10[LoongArch][NFC] Pre-commit tests for memcmp expansion (#166718)ZhaoQi2-0/+2374
Test cases are similar as riscv.
2025-11-09[clang-format] Fix a crash in AlignArrayOfStructures (#167099)owenca2-1/+17
Fixes #157405
2025-11-09[VPlan] Use VPInstructionWithType for casts in VPlan0. (NFC)Florian Hahn2-5/+12
Use VPInstructionWithType for casts in VPlan0, to enable additional analysis/transforms on VPlan0, and more accurate modeling in VPlan0.
2025-11-09[InstCombine] Don't sink if it would require dropping deref assumptions. ↵Florian Hahn3-64/+153
(#166945) Currently sinking assumes in instcombine drops assumes if they would prevent sinking. Removing dereferenceable assumptions earlier on can inhibit vectorization of early-exit loops in practice. Special-case deferenceable assumptions so that they block sinking. This can be combined with a separate change to drop dereferencebale assumptions after vectorization: https://clang.godbolt.org/z/jGqcx3sbs PR: https://github.com/llvm/llvm-project/pull/166945
2025-11-09[gn build] Port f2c50f930540LLVM GN Syncbot1-0/+1
2025-11-09[BOLT] Support restartable sequences in tcmalloc (#167195)Maksim Panchenko5-2/+117
Add `RSeqRewriter` to detect code references from `__rseq_cs` section and ignore function referenced from that section. Code references are detected via relocations (static or dynamic). Note that the abort handler is preceded by a 4-byte signature byte sequence and we cannot relocate the handler without that the signature, otherwise the application may crash. Thus we are ignoring the function, i.e. making sure it's not separated from its signature.
2025-11-09Fix typo in LangRef.md regarding regions (#167242)Omar Hossam1-1/+1
2025-11-10[lldb] Disable TestLocationsAfterRebuild for remote targets (#167239)Dmitry Vasilyev1-1/+2
#160199 broke buildbots `lldb-remote-linux-ubuntu` and `lldb-remote-linux-win`. This patch must make these buildbots green for now.
2025-11-09[SandboxIR] Remove tight-coupling with LLVM's SwitchInst::CaseHandle (#167093)vporpo2-21/+119
SandboxIR's SwitchInst CaseHandle was relying on LLVM IR's SwitchInst::CaseHandleImpl template, which may call private functions of SandboxIR's SwitchInst. This creates a dependency cycle which is against the design principles of Sandbox IR. The issue was exposed by: https://github.com/llvm/llvm-project/pull/166842 Thanks to @aengelke for raising the issue.
2025-11-09[AArch64][GlobalISel] Correct instructions for 64bit fneg constant vectors. ↵David Green2-26/+120
(#166537) This code was assuming that the vectors were 128bit. Add handling for 64bit vectors. Some of the tests do not apply yet due to not matching non-splat vectors. Fixes #166400
2025-11-09[mlir] Consolidate two implementations of meet (NFC) (#167208)Kazu Hirata1-20/+17
This patch consolidates two implementations of meet using "if constexpr", migrating away from the SFINAE-based approach.
2025-11-09[clang] Remove redundant typename (NFC) (#167207)Kazu Hirata2-3/+2
Identified with readability-redundant-typename.
2025-11-09[Target] Fix misleading indentation (NFC) (#167206)Kazu Hirata4-9/+9
Identified with readability-misleading-indentation.
2025-11-09[mlir] Use llvm::transform (NFC) (#167205)Kazu Hirata6-21/+15
Identified with llvm-use-ranges.
2025-11-09[SPIRV] Add support for `bfloat16` atomics via the `SPV_INTEL_16bit_atomics` ↵Alex Voicu7-14/+103
extension (#166257) This enables support for atomic RMW ops (add, sub, min and max to be precise) with `bfloat16` operands, via the [SPV_INTEL_16bit_atomics extension](https://github.com/intel/llvm/pull/20009). It's logically a successor to #166031 (I should've used a stack), but I'm putting it up for early review. --------- Co-authored-by: Matt Arsenault <arsenm2@gmail.com>
2025-11-09[clang-tidy] Fix `readability-container-data-pointer` check (#165636)mitchell3-2/+32
Fix issue in readability-container-data-pointer when the container expression is a dereference (e.g., `&(*p)[0]`). The previous fix-it suggested `*p.data()`, which changes semantics because `.` binds tighter than `*`. The fix now correctly suggests `(*p).data()`. Closes [#164852](https://github.com/llvm/llvm-project/issues/164852) --------- Co-authored-by: Baranov Victor <bar.victor.2002@gmail.com>
2025-11-09Remove unused <set> and <map> inclusion (#167175)serge-sans-paille24-25/+3
2025-11-09Remove unused <array> and <list> inclusion (#167116)serge-sans-paille14-16/+0
2025-11-09[gn build] Port 8d950d27d686LLVM GN Syncbot5-8/+8
2025-11-09[gn build] Port 00eacc29f009LLVM GN Syncbot2-1/+1
2025-11-09[NFCI][lldb][test][Recognizer] Fix mismatched C/C++ frontend subtitutions ↵Raul Tambre2-4/+4
(#167220) The explicit language specifications for Objective C/C++ don't seem necessary either so I've removed them too. I found these by using Clang frontend configuration files containing language-specific options for both C and C++ (e.g. `-std=c2y` and `-std=c++26`). Prior-art: 21041c9
2025-11-09[gn] port c940bfd7e621 (BPF SDNodeInfo)Nico Weber1-0/+7
2025-11-09[SelectionDAG] Fix assertion failure on inline asm register type mismatch ↵Ahmed Nour2-1/+11
(#166615) Resolves https://github.com/llvm/llvm-project/issues/166057 --------- Co-authored-by: Phoebe Wang <phoebe.wang@intel.com>
2025-11-09[tools][llc] Fix save-stats.ll require aarch64 target (#167218)Tomer Shafir1-0/+1
A quick fix for the CI failure introduced by https://github.com/llvm/llvm-project/pull/163967
2025-11-09[tools][llc] Add `--save-stats` option (#163967)Tomer Shafir4-4/+92
This patch adds a Clang-compatible `--save-stats` option, to provide an easy to use way to save LLVM statistics files when working with llc on the backend. Like on Clang, one can specify `--save-stats`, `--save-stats=cwd`, and `--save-stats=obj` with the same semantics and JSON format. The implementation uses 2 methods `MaybeEnableStats` and `MaybeSaveStats` called before and after `compileModule` respectively that externally own the statistics related logic, while `compileModule` is now required to return the resolved output filename via an output param. Note: like on Clang, the pre-existing `--stats` option is not affected.
2025-11-09[PostRASink] Add target hook shouldPostRASink (#167182)Junjie Gu2-0/+7
2025-11-09Revert "Reapply "[compiler-rt] Default to Lit's Internal Shell""Aiden Grossman1-5/+3
This reverts commit 4b6a597230020282fe94ee6f476a3aad45fbe9aa. This broke premerge and maybe one PPC bot: 1. https://lab.llvm.org/staging/#/builders/192/builds/10157 2. https://lab.llvm.org/buildbot/#/builders/95/builds/19044
2025-11-08[llvm] Remove unused local variables (NFC) (#167185)Kazu Hirata4-7/+0
Identified with bugprone-unused-local-non-trivial-variable.
2025-11-08[LifetimeSafety] Use StringMap::contains (NFC) (#167186)Kazu Hirata1-2/+1
Identified with readability-container-contains.
2025-11-08[Vectorize] Remove a redundant declaration (NFC) (#167188)Kazu Hirata1-4/+0
EnableVPlanNativePath is declared in LoopVectorizationPlanner.h. Identified with readability-redundant-declaration.
2025-11-08[Offload] Remove unused KernelArgsTy instantiation (#167197)Kevin Sala Penades1-4/+0
2025-11-09Reapply "[compiler-rt] Default to Lit's Internal Shell"Aiden Grossman1-3/+5
This reverts commit 206a1d2b5b0f7a6a7b8fdf06d067f37677bd13b1. The issues that came up with the last landing have been fixed, so trying this again to see if it sticks this time.
2025-11-09[libc++][numeric] Marked saturation artithmetic functions as `[[nodiscard]]` ↵Hristo Hristov3-23/+40
(#166898) ...according to Coding Guidelines: *`[[nodiscard]]` should be applied to functions where discarding the return value is most likely a correctness issue.* # References - https://libcxx.llvm.org/CodingGuidelines.html#apply-nodiscard-where-relevant - https://github.com/llvm/llvm-project/pull/166524#issuecomment-3495567876 Co-authored-by: Hristo Hristov <zingam@outlook.com>
2025-11-08[gn] port ebb61a5bea (llvm-cas)Nico Weber2-0/+23
2025-11-08[ObjectYAML] Remove extraneous .c_str() (NFC) (#167189)Kazu Hirata1-1/+1
maskedBitSetCase takes StringRef, so we can "implicitly cast" std::string to StringRef. Identified with readability-redundant-string-cstr.
2025-11-08[mlir] Remove duplicate includes (NFC) (#167187)Kazu Hirata2-2/+0
Identified with readability-duplicate-include.
2025-11-09[libc++] Treat P0513R0 as a defect report against C++11 (#166690)A. Jiang5-29/+12
P0513R0 is essentially a collective resolution paper of LWG2543, LWG2791, LWG2809, and LWG2817. Among these LWG issues, LWG2543 (conditionally enabled `hash`) and LWG2817 (`hash<nullptr_t>`) affect pre-C++17 utilities. We generally backport changes from LWG issues, so this patch backports the relevant parts of P0513R0. Although we provide `hash<unique_ptr>` as an extension in C++03 mode, as C++03 mode isn't encouraged now, this patch leaves `hash<unique_ptr>` unchanged in C++03 mode.
2025-11-09[MLIR] Fix FileCheck annotations and add 32-bit coverage (#167149)Men-cotton6-15/+37
Addresses #93154 by ensuring the test RUN/FILECHECK prefixes across `mlir/test/Conversion/FuncToLLVM/` and related files match their expected outputs, and adds an `index-bitwidth=32` variant of `expand-then-convert-to-llvm.mlir` that exercises `@collapse_shape_dynamic_with_non_identity_layout` through the same MemRef-to-LLVM pipeline so the 32-bit layout descriptors are verified.