LLVM/project cb175d2llvm/lib/Target/AArch64/MCTargetDesc AArch64MCAsmInfo.cpp, llvm/lib/Target/AMDGPU/MCTargetDesc AMDGPUMCAsmInfo.cpp

[MC][NFC] Use EnumStrings for AtSpecifiers (#211827)

Store at specifiers without relocations using EnumStrings, reducing
.data.rel.ro by 4-5kiB. This also saves the more compactly at now 6B per
entry instead of 24B.
DeltaFile
+87-84llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.cpp
+31-29llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
+27-25llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
+18-14llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
+17-15llvm/lib/Target/VE/MCTargetDesc/VEMCAsmInfo.cpp
+12-10llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp
+192-1778 files not shown
+256-22214 files

LLVM/project 5f787acllvm/lib/Transforms/Utils SimplifyCFG.cpp, llvm/test/Transforms/SimplifyCFG switch-dedup.ll

[SimplfiyCFG] Deduplicate edges in `hoistSuccIdenticalTerminatorToSwitchOrIf` (#212017)

Fix domtree update by deduplicating edges to be inserted. Tested by the
function `@dedup`.
DeltaFile
+3-1llvm/lib/Transforms/Utils/SimplifyCFG.cpp
+1-1llvm/test/Transforms/SimplifyCFG/switch-dedup.ll
+4-22 files

LLVM/project 73f6b3aclang/lib CMakeLists.txt

[spr] initial version

Created using spr 1.3.8-wip
DeltaFile
+3-1clang/lib/CMakeLists.txt
+3-11 files

LLVM/project 6bd4361llvm/lib/Transforms/Vectorize VPlan.h VPlanCFG.h

[spr] initial version

Created using spr 1.3.8-wip
DeltaFile
+12-0llvm/lib/Transforms/Vectorize/VPlan.h
+11-0llvm/lib/Transforms/Vectorize/VPlanCFG.h
+7-2llvm/lib/Transforms/Vectorize/VPlan.cpp
+30-23 files

LLVM/project ae5e065compiler-rt/lib/profile InstrProfilingPlatformROCm.cpp, compiler-rt/test/profile/AMDGPU device-module-load-file.hip

[PGO][HIP] Support hipModuleLoad in offload PGO (#211875)

Offload PGO finds profile sections by inspecting the image passed to
hipModuleLoadData. hipModuleLoad only provides a file name, so its
device
profile counters were not collected.

After a successful hipModuleLoad, read the code object with the existing
profile file-buffer helper and register it through the same path used by
in-memory module loads.
DeltaFile
+63-0compiler-rt/test/profile/AMDGPU/device-module-load-file.hip
+37-3compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
+100-32 files

LLVM/project a273377llvm/include/llvm/Support GenericDomTreeConstruction.h, llvm/unittests/Support GenericDomTreeTest.cpp

[DomTreeConstr][NFC] Resize NodeInfos once on construction (#211998)

This avoids frequent size checks when accessing node infos. All numbered
graphs support getMaxNumber().

Also move away from BB->getParent() as preliminary work for numbering
VPlan blocks -- there, getParent() has a different meaning.
DeltaFile
+18-17llvm/include/llvm/Support/GenericDomTreeConstruction.h
+0-5llvm/unittests/Support/GenericDomTreeTest.cpp
+18-222 files

LLVM/project 0252b42clang-tools-extra/docs/clang-tidy/checks/abseil unchecked-statusor-access.md duration-unnecessary-conversion.md

[clang-tidy][docs] Rewrite remaining abseil check docs to Markdown (#212004)

This commit rewrites the reST documentation to Markdown.

Tracking issue: #201242
See the [migration guide] for more information. 

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

AI Usage: This was prepared with rst2myst and GPT5.6-assisted cleanup, I
manually verified that all the documentations render as expected.

Preview site for reviewing:
https://broken.life/llvm-staging/abseil-markdown-port/
DeltaFile
+267-283clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.md
+35-35clang-tools-extra/docs/clang-tidy/checks/abseil/duration-unnecessary-conversion.md
+34-33clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-str-contains.md
+32-32clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-startswith.md
+24-25clang-tools-extra/docs/clang-tidy/checks/abseil/duration-division.md
+23-23clang-tools-extra/docs/clang-tidy/checks/abseil/faster-strsplit-delimiter.md
+415-4316 files not shown
+537-55512 files

LLVM/project fedcc2eclang-tools-extra/docs/clang-tidy/checks/abseil unchecked-statusor-access.rst unchecked-statusor-access.md

[clang-tidy][docs] Rename remaining abseil check docs to Markdown (#212003)

Tracking issue: https://github.com/llvm/llvm-project/issues/201242
See the [migration guide] for more information.

[migration guide]:

https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

This is the initial straight rename commit. It will probably break the
docs build, but it has to be a separate PR for blame preservation
purposes.
DeltaFile
+0-442clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.rst
+442-0clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.md
+0-57clang-tools-extra/docs/clang-tidy/checks/abseil/duration-unnecessary-conversion.rst
+57-0clang-tools-extra/docs/clang-tidy/checks/abseil/duration-unnecessary-conversion.md
+52-0clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-str-contains.md
+0-52clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-str-contains.rst
+551-55118 files not shown
+895-89524 files

LLVM/project 7e08ed3llvm/lib/Target/AArch64 AArch64MacroFusion.cpp AArch64Features.td, llvm/test/CodeGen/AArch64 misched-fusion-fmin-fmax-post-ra.mir misched-fusion-fmin-fmax-pre-ra.mir

[AArch64] Add FMIN/FMAX clustering (#210906)

This patch adds a subtarget feature that controls scheduling FMIN/FMAX
instructions back to back. Enabled on Apple CPU.
DeltaFile
+968-0llvm/test/CodeGen/AArch64/misched-fusion-fmin-fmax-post-ra.mir
+456-0llvm/test/CodeGen/AArch64/misched-fusion-fmin-fmax-pre-ra.mir
+371-0llvm/test/CodeGen/AArch64/misched-fusion-fmin-fmax.ll
+44-0llvm/lib/Target/AArch64/AArch64MacroFusion.cpp
+5-0llvm/lib/Target/AArch64/AArch64Features.td
+3-1llvm/lib/Target/AArch64/AArch64Processors.td
+1,847-12 files not shown
+1,849-28 files

LLVM/project b5ffcdfclang-tools-extra/docs/clang-tidy/checks/abseil unchecked-statusor-access.md duration-unnecessary-conversion.md

[clang-tidy][docs] Rewrite remaining abseil check docs to Markdown
DeltaFile
+267-283clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.md
+35-35clang-tools-extra/docs/clang-tidy/checks/abseil/duration-unnecessary-conversion.md
+34-33clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-str-contains.md
+32-32clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-startswith.md
+24-25clang-tools-extra/docs/clang-tidy/checks/abseil/duration-division.md
+23-23clang-tools-extra/docs/clang-tidy/checks/abseil/faster-strsplit-delimiter.md
+415-4316 files not shown
+537-55512 files

LLVM/project 24246aeclang-tools-extra/docs/clang-tidy/checks/abseil unchecked-statusor-access.md unchecked-statusor-access.rst

[clang-tidy][docs] Rename remaining abseil check docs to Markdown
DeltaFile
+442-0clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.md
+0-442clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.rst
+0-57clang-tools-extra/docs/clang-tidy/checks/abseil/duration-unnecessary-conversion.rst
+57-0clang-tools-extra/docs/clang-tidy/checks/abseil/duration-unnecessary-conversion.md
+52-0clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-str-contains.md
+0-52clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-str-contains.rst
+551-55118 files not shown
+895-89524 files

LLVM/project 255b9d0llvm/include/llvm/Transforms/Utils AssignGUID.h, llvm/lib/Target/AArch64 SVEShuffleOpts.cpp AArch64.h

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+3-3llvm/lib/Target/AArch64/SVEShuffleOpts.cpp
+3-2llvm/lib/Target/AArch64/AArch64.h
+1-3llvm/include/llvm/Transforms/Utils/AssignGUID.h
+3-1llvm/lib/Target/AArch64/AArch64PassRegistry.def
+10-94 files

LLVM/project 4173c42llvm/include/llvm/Transforms/Utils LowerCommentStringPass.h AssignGUID.h, llvm/lib/Target/AArch64 SVEShuffleOpts.cpp AArch64.h

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+3-3llvm/lib/Target/AArch64/SVEShuffleOpts.cpp
+2-3llvm/include/llvm/Transforms/Utils/LowerCommentStringPass.h
+3-2llvm/lib/Target/AArch64/AArch64.h
+1-3llvm/include/llvm/Transforms/Utils/AssignGUID.h
+3-1llvm/lib/Target/AArch64/AArch64PassRegistry.def
+12-125 files

LLVM/project dc8a018lldb/source/Plugins/LanguageRuntime/CPlusPlus CPPLanguageRuntime.cpp CommonABIRuntime.h

[lldb] Allow multiple ABI runtimes for C++
DeltaFile
+36-16lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
+22-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.h
+21-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.cpp
+8-6lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h
+5-2lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
+3-2lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
+95-266 files

LLVM/project d2eeec4lldb/source/Plugins/LanguageRuntime/CPlusPlus ItaniumABIRuntime.cpp CommonABIRuntime.cpp

[lldb] Move dynamic type cache to common ABI runtime
DeltaFile
+0-16lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
+16-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.cpp
+11-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.h
+0-9lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h
+27-254 files

LLVM/project 5b8c89alldb/source/Plugins/LanguageRuntime/CPlusPlus CommonABIRuntime.cpp ItaniumABIRuntime.cpp

[lldb] Extract type lookup by name from Itanium ABI
DeltaFile
+97-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.cpp
+10-85lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
+35-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.h
+2-4lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h
+1-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CMakeLists.txt
+145-895 files

LLVM/project 0bf3638llvm/lib/CodeGen/AsmPrinter AsmPrinter.cpp, llvm/lib/MC MachObjectWriter.cpp

Revert "[MachO] Preserve weak linkage for aliases" (#212009)
DeltaFile
+0-17llvm/test/CodeGen/AArch64/macho-weak-alias.ll
+1-6llvm/lib/MC/MachObjectWriter.cpp
+1-3llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+2-263 files

LLVM/project 291e0a4llvm/lib/Transforms/Utils SimplifyCFG.cpp, llvm/test/Transforms/SimplifyCFG pr165301.ll

[SimplifyCFG] Fix DomTree update in `turnSwitchRangeIntoICmp` (#212006)

The original removal of `BB->Default` has been handled by
`createUnreachableSwitchDefault`.
When `OtherDest` is also unreachable, the edge should be removed.

This issue cannot be reproduced via
`-simplifycfg-require-and-preserve-domtree=1`. I just found it by
checking DT in `requestResimplify`.
DeltaFile
+2-4llvm/lib/Transforms/Utils/SimplifyCFG.cpp
+1-1llvm/test/Transforms/SimplifyCFG/pr165301.ll
+3-52 files

LLVM/project 80f1904lldb/source/Plugins/LanguageRuntime/CPlusPlus CPPLanguageRuntime.cpp CommonABIRuntime.h

[lldb] Allow multiple ABI runtimes for C++
DeltaFile
+36-16lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
+22-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.h
+21-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.cpp
+8-6lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h
+5-2lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
+3-2lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
+95-266 files

LLVM/project 98f768fclang-tools-extra/docs/clang-tidy/checks/abseil unchecked-statusor-access.md duration-unnecessary-conversion.md

[clang-tidy][docs] Rewrite remaining abseil check docs to Markdown
DeltaFile
+267-283clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.md
+35-35clang-tools-extra/docs/clang-tidy/checks/abseil/duration-unnecessary-conversion.md
+34-33clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-str-contains.md
+32-32clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-startswith.md
+24-25clang-tools-extra/docs/clang-tidy/checks/abseil/duration-division.md
+23-23clang-tools-extra/docs/clang-tidy/checks/abseil/faster-strsplit-delimiter.md
+415-4316 files not shown
+537-55512 files

LLVM/project 3fe8ab4libcxx/src std_stream.h

[libcxx] Speed up xsgetn for always_noconv

In the always_noconv path, optimize character reads in the same way as
xsgetn.

Unlike fread, getwc has different semantics, so the same optimization
cannot be applied to wide characters. Therefore, only optimize the char
path.
DeltaFile
+23-0libcxx/src/std_stream.h
+23-01 files

LLVM/project b89f8d4lldb/source/Plugins/LanguageRuntime/CPlusPlus ItaniumABIRuntime.cpp CommonABIRuntime.cpp

[lldb] Move dynamic type cache to common ABI runtime
DeltaFile
+0-16lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
+16-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.cpp
+11-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.h
+0-9lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h
+27-254 files

LLVM/project 0f473dalldb/source/Plugins/LanguageRuntime/CPlusPlus CommonABIRuntime.cpp ItaniumABIRuntime.cpp

[lldb] Extract type lookup by name from Itanium ABI
DeltaFile
+97-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.cpp
+10-85lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
+35-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.h
+2-4lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h
+1-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CMakeLists.txt
+145-895 files

LLVM/project 230f9c3llvm/lib/CodeGen/AsmPrinter AsmPrinter.cpp, llvm/lib/MC MachObjectWriter.cpp

Revert "[MachO] Preserve weak linkage for aliases (#198148)"

This reverts commit 29575a3460b43132c7d973b502830897b02874a9.
DeltaFile
+0-17llvm/test/CodeGen/AArch64/macho-weak-alias.ll
+1-6llvm/lib/MC/MachObjectWriter.cpp
+1-3llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+2-263 files

LLVM/project ec157b6llvm/lib/Transforms/Vectorize VPlanTransforms.cpp LoopVectorize.cpp, llvm/test/Transforms/LoopVectorize/VPlan/AArch64 vplan-memory-op-decisions.ll

[VPlan] Widen masked unit-stride consecutive accesses in VPlan. (#211315)

Extend the widenConsecutiveMemOps sub-pass to widen masked/predicated
unit-stride consecutive accesses VPlan-natively.

This requires exposing an instruction-independent
isLegalMaskedLoadOrStore in VPSelectionContext, as well as adding it to
VPCostContext. Some of the members will probably be useful for other
changes as well.

PR: https://github.com/llvm/llvm-project/pull/211315
DeltaFile
+86-3llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-memory-op-decisions.ll
+21-9llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+17-3llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+5-9llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.cpp
+6-4llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
+1-0llvm/lib/Transforms/Vectorize/VPlanHelpers.h
+136-286 files

LLVM/project 2755ffcllvm/lib/Transforms/InstCombine InstCombineCompares.cpp, llvm/test/Transforms/InstCombine cast_ptr.ll

[InstCombine] Fold icmp ptrtoaddr x, ptrtoaddr y -> icmp x, y (#211991)

Similar to the existing ptrtoint fold; this is valid, because icmp only
compares address bits. This addresses optimization regressions when
generating ptrtoaddr for pointer subtractions.
DeltaFile
+114-0llvm/test/Transforms/InstCombine/cast_ptr.ll
+8-1llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
+122-12 files

LLVM/project 15c6286clang-tools-extra/docs/clang-tidy/checks/abseil unchecked-statusor-access.md duration-unnecessary-conversion.md

[clang-tidy][docs] Rewrite remaining abseil check docs to Markdown
DeltaFile
+267-283clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.md
+35-35clang-tools-extra/docs/clang-tidy/checks/abseil/duration-unnecessary-conversion.md
+34-33clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-str-contains.md
+32-32clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-startswith.md
+24-25clang-tools-extra/docs/clang-tidy/checks/abseil/duration-division.md
+23-23clang-tools-extra/docs/clang-tidy/checks/abseil/faster-strsplit-delimiter.md
+415-4316 files not shown
+537-55512 files

LLVM/project 9b1218clldb/source/Plugins/LanguageRuntime/CPlusPlus CPPLanguageRuntime.cpp ItaniumABIRuntime.cpp

[lldb] Move GetVTableInfo to C++ language runtime (#207010)

The original PR was reverted in
https://github.com/llvm/llvm-project/pull/206816 due to a test failure
on lldb-aarch64-ubuntu.
Since I couldn't reproduce the failure, I decided to split the PR into
smaller chunks.

This is part 1/4 (the final state is on
https://github.com/Nerixyz/llvm-project/tree/refactor/common-abi-runtime-take2-4-of-4).

It moves `GetVTableInfo` and `TypeHasVTable` from the Itanium ABI
runtime to the C++ language runtime. Eventually, this will be used to
select the ABI runtime that's able to handle a vtable. For now, we
always ask and use Itanium.
DeltaFile
+119-2lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
+6-112lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
+10-0lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
+2-6lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h
+137-1204 files

LLVM/project cccf71bclang-tools-extra/docs/clang-tidy/checks/abseil unchecked-statusor-access.md unchecked-statusor-access.rst

[clang-tidy][docs] Rename remaining abseil check docs to Markdown
DeltaFile
+442-0clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.md
+0-442clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.rst
+0-57clang-tools-extra/docs/clang-tidy/checks/abseil/duration-unnecessary-conversion.rst
+57-0clang-tools-extra/docs/clang-tidy/checks/abseil/duration-unnecessary-conversion.md
+52-0clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-str-contains.md
+0-52clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-str-contains.rst
+551-55118 files not shown
+895-89524 files

LLVM/project d8faf7fllvm/include/llvm/Support GenericDomTreeConstruction.h, llvm/unittests/Support GenericDomTreeTest.cpp

[spr] initial version

Created using spr 1.3.8-wip
DeltaFile
+18-17llvm/include/llvm/Support/GenericDomTreeConstruction.h
+0-5llvm/unittests/Support/GenericDomTreeTest.cpp
+18-222 files