Merged
Conversation
…73725) This change fixes the reservation of LR by `-mlr-for-calls-only`, also reserving its sub-register W30. Otherwise, the register allocator could allocate W30. Adding a regression test for general sub-register reservation, including LR.
The original patch, landed as a2db31b ([VPlan] Simplify pow-of-2 (mul|udiv) -> (shl|lshr), llvm#172477) had a critical commutative matcher bug, which has now been fixed. An assert has also been strengthened, following a post-commit review.
Counts the number of Basic Block successors when stats are enabled We want to track this metric for a project in which we analyze the effects of having LLVM Intermediate Representation (IR) code with a high number of branches. We plan to use these capabilities to learn how enabling memory safety features increases the branchiness in LLVM IR and further how it affects binary compilation time and the resulting binary performance.
…ysis (llvm#174117) The join block could be not a header of a cycle, as shown in the newly added test case.
…lvm#174522) (llvm#174642) The option added in llvm#174522 breaks simulator tests, since `set_default` overrides `False` values with the default. Since these options are either string or boolean, this patches set_default to override only un-set or empty string values (empty string is not truth-y and therefore would be overwritten by defaults currently, so this is NFCI)
…174648) To prevent compiler warnings when building without assertions turned on.
This rewrite some CUDA Fortran specific like `on_device` function to constant boolean values.
There's no need for a full definition of `BinaryBasicBlock` in `MCPlusBuilder.h`. Use `InstructionListType::iterator` instead of `BinaryBasicBlock::iterator` in `findMemcpySizeInBytes()`.
The `ModuleCache` class is currently reference-counted intrusively. As explained in llvm#139584, this is problematic. This PR uses `std::shared_ptr` to reference-count `ModuleCache` instead, which clarifies what happens to its lifetime when constructing `CompilerInstance`, for example. This also makes the reference in `ModuleManager` non-owning, simplifying the ownership relationship further. The `ASTUnit::transferASTDataFromCompilerInstance()` function now accounts for that by taking care to keep it alive.
Collapsible lists are achieved via `<details>` and their child `<summary>` tags. `<details>` tags allow for a section to be designated as collapsible, while the `<summary>` tag is used as the sidebar section's header. This approach was chosen over making the lists stateful through various CSS properties. This patch also refactors the `<li>` tag structure of sidebar sections. Previously, the section header and list items were in separate `<li>` tags without sharing a parent. Now, the header and items are under a single `<li>` tag which makes more sense semantically.
…lvm#174524) So that `SourceRange` can be used in `DenseMap` and `DenseSet`.
…#174657) Move CUDA Fortran related passes with others in CUDA directory.
…#174660) This moves a few tests that were created in the wrong location.
…in C23 to follow the spec (llvm#172211) Fixes llvm#172118 --- This patch resolves an issue where C23 fixed-underlying enum constants were incorrectly treated as the underlying integer type instead of the enumeration type. According to C23 `6.7.2.2p15`: > The enumeration member type of an enumerated type with a fixed underlying type is the same as the type itself.
…lvm#173261) Depends on: * llvm#173238 (only last commit relevant for review) This patch revives the `llvm::PointerIntPair` LLDB data-formatter. The previous version was commented out because it relied on expression evaluation and was hence slow/brittle. The formatter in this PR doesn't rely on evaluating expressions. Drive-by change: * removes the `llvm::PointerUnion` formatter which was also commented out. A future version of it will look very different than it does now, so there's no point in keeping it because the diff won't be helpful in a review.
…ns (llvm#173572) Related to: llvm#167765 This PR implements- `BI__builtin_ia32_vcvtph2ps_mask` `BI__builtin_ia32_vcvtph2ps256_mask` `BI__builtin_ia32_vcvtph2ps512_mask`
…ntPair" (llvm#174673) Reverts llvm#173261 Some bots were failing with: ``` Step 6 (build-unified-tree) failure: build (failure) ... 2.874 [7103/10/382] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CallingConvEmitter.cpp.o 2.875 [7102/10/383] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeEmitterGen.cpp.o 2.895 [7101/10/384] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeGenMapTable.cpp.o 2.896 [7100/10/385] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CompressInstEmitter.cpp.o 2.898 [7099/10/386] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CTagsEmitter.cpp.o 2.901 [7098/10/387] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelEmitter.cpp.o 2.905 [7097/10/388] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelMatcherEmitter.cpp.o 2.918 [7096/10/389] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelMatcherGen.cpp.o 2.920 [7095/10/390] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DecoderTree.cpp.o 2.932 [7094/10/391] Building CXX object projects/cross-project-tests/CMakeFiles/check-lldb-llvm-support-pointer-int-pair.dir/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp.o FAILED: projects/cross-project-tests/CMakeFiles/check-lldb-llvm-support-pointer-int-pair.dir/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp.o /opt/ccache/bin/g++ -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/buildbot/buildbot-root/abi-test/build/projects/cross-project-tests -I/home/buildbot/buildbot-root/abi-test/llvm/cross-project-tests -I/home/buildbot/buildbot-root/abi-test/build/include -I/home/buildbot/buildbot-root/abi-test/llvm/llvm/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -UNDEBUG -g -O0 -std=c++17 -MD -MT projects/cross-project-tests/CMakeFiles/check-lldb-llvm-support-pointer-int-pair.dir/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp.o -MF projects/cross-project-tests/CMakeFiles/check-lldb-llvm-support-pointer-int-pair.dir/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp.o.d -o projects/cross-project-tests/CMakeFiles/check-lldb-llvm-support-pointer-int-pair.dir/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp.o -c /home/buildbot/buildbot-root/abi-test/llvm/cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp /home/buildbot/buildbot-root/abi-test/llvm/cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp: In function ‘int main()’: /home/buildbot/buildbot-root/abi-test/llvm/cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp:25:3: error: ‘__builtin_debugtrap’ was not declared in this scope; did you mean ‘__builtin_trap’? 25 | __builtin_debugtrap(); | ^~~~~~~~~~~~~~~~~~~ | __builtin_trap 2.932 [7094/9/392] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelMatcherOpt.cpp.o 2.933 [7094/8/393] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DecoderTableEmitter.cpp.o 2.936 [7094/7/394] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DecoderEmitter.cpp.o 2.937 [7094/6/395] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DFAEmitter.cpp.o 2.944 [7094/5/396] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DFAPacketizerEmitter.cpp.o 3.340 [7094/4/397] Building PPCGenTargetFeatures.inc... 3.450 [7094/3/398] Building ARMTargetParserDef.inc... 3.780 [7094/2/399] Building AArch64TargetParserDef.inc... 5.093 [7094/1/400] Building RISCVTargetParserDef.inc... ninja: build stopped: subcommand failed. ```
llvm#174542) This matches what we do for CLZW and other W instructions.
…m#174674) Reverts llvm#174310 This change is causing 2 cross-project-test failures on https://lab.llvm.org/buildbot/#/builders/174/builds/29695
This adds a new page to lldb.llvm.org that includes a user guide for lldb-dap. The overall structure for documentation: * https://lldb.llvm.org/resources/lldbdap.html - represents the user facing documentation for lldb-dap, a high level overview of lldb-dap and a place we can point users to for basic usage information. * https://lldb.llvm.org/resources/lldbdap-contributing.html - represents the contributing documentation for lldb-dap. * llvm-project/lldb/tools/lldb-dap/README.md - The lldb-dap VSCode Extension specific documentation. This is a first pass at the documentation, I expect to expand on it further as needed.
Summary: The OS here is the standard CUDA support target, which is the ABI used for all of the same intrinsics the `nvidiacl` target uses. These can be aliases asn `cuda` in the triple is the canonical form for most all GPU compute.
…oadStoreOptimizer (llvm#174612) If we did not pair two viable `Xqcilsm` load/store instructions in `RISCVLoadStoreOptimizer` we iterated over the second instruction when looking for other pairs to merge. This leads to us missing out on opportunities where the second instruction could have been the start of another potential pair that could have been merged.
…+ templates (llvm#174329) Closes llvm#91155
Collaborator
Author
ronlieb
approved these changes
Jan 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.