LLVM/project 49f8ad1clang-tools-extra/clang-doc Representation.cpp Representation.h, clang-tools-extra/clang-doc/tool ClangDocMain.cpp

Revert clang-doc arena merging patches

This is a set of squashed reverts of recen clang doc patches, since its
breaking something on Darwin builders:
https://lab.llvm.org/buildbot/#/builders/23/builds/19172

Revert "[clang-doc][nfc] Default initialize all StringRef members (#191641)"

This reverts commit 155b9b354c1d91661be9f6d0432a96e47cfc2700.

Revert "[clang-doc] Initialize StringRef members in Info types (#191637)"

This reverts commit 489dab3827b255d21ea38b1e3f45ddb08bd10a87.

Revert "[clang-doc] Initialize member variable (#191570)"

This reverts commit 5d64a44a84af31f9e99d42cccffa4f01c0be2e0b.

Revert "[clang-doc] Merge data into persistent memory (#190056)"

    [6 lines not shown]
DeltaFile
+29-272clang-tools-extra/clang-doc/Representation.cpp
+23-60clang-tools-extra/clang-doc/Representation.h
+25-25clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
+77-3573 files

LLVM/project 5348f7bllvm/lib/Analysis LoopPass.cpp

formatting

Created using spr 1.3.7
DeltaFile
+1-2llvm/lib/Analysis/LoopPass.cpp
+1-21 files

LLVM/project ff32c0aclang/lib/CodeGen BackendUtil.cpp, llvm/test/CodeGen/AArch64 ragreedy-csr.ll

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

Created using spr 1.3.7

[skip ci]
DeltaFile
+257-94llvm/test/Transforms/LoopStrengthReduce/X86/bin_power.ll
+111-116llvm/test/CodeGen/AArch64/ragreedy-csr.ll
+70-37llvm/test/Transforms/LoopStrengthReduce/X86/normalization-during-scev-expansion.ll
+34-37llvm/test/CodeGen/X86/lsr-addrecloops.ll
+34-22llvm/test/Transforms/LoopStrengthReduce/X86/postinc-iv-used-by-urem-and-udiv.ll
+54-1clang/lib/CodeGen/BackendUtil.cpp
+560-30741 files not shown
+784-43047 files

LLVM/project ee6829dclang/lib/CodeGen BackendUtil.cpp, llvm/test/CodeGen/AArch64 ragreedy-csr.ll

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+257-94llvm/test/Transforms/LoopStrengthReduce/X86/bin_power.ll
+111-116llvm/test/CodeGen/AArch64/ragreedy-csr.ll
+70-37llvm/test/Transforms/LoopStrengthReduce/X86/normalization-during-scev-expansion.ll
+34-37llvm/test/CodeGen/X86/lsr-addrecloops.ll
+34-22llvm/test/Transforms/LoopStrengthReduce/X86/postinc-iv-used-by-urem-and-udiv.ll
+54-1clang/lib/CodeGen/BackendUtil.cpp
+560-30742 files not shown
+787-43648 files

LLVM/project e471b6bllvm/test/Transforms/LoopStrengthReduce/X86 lcssa-preservation-regression.ll

test

Created using spr 1.3.7
DeltaFile
+49-0llvm/test/Transforms/LoopStrengthReduce/X86/lcssa-preservation-regression.ll
+49-01 files

LLVM/project 9c21012clang/include/clang/Basic CodeGenOptions.def, clang/include/clang/Options Options.td

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

Created using spr 1.3.7

[skip ci]
DeltaFile
+251-94llvm/test/Transforms/LoopStrengthReduce/X86/bin_power.ll
+54-1clang/lib/CodeGen/BackendUtil.cpp
+32-6llvm/test/Transforms/LoopStrengthReduce/pr25541.ll
+9-0clang/include/clang/Options/Options.td
+1-0clang/include/clang/Basic/CodeGenOptions.def
+347-1015 files

LLVM/project 9e180b7clang/lib/CodeGen BackendUtil.cpp, llvm/test/CodeGen/AArch64 ragreedy-csr.ll

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+257-94llvm/test/Transforms/LoopStrengthReduce/X86/bin_power.ll
+111-116llvm/test/CodeGen/AArch64/ragreedy-csr.ll
+70-37llvm/test/Transforms/LoopStrengthReduce/X86/normalization-during-scev-expansion.ll
+34-37llvm/test/CodeGen/X86/lsr-addrecloops.ll
+34-22llvm/test/Transforms/LoopStrengthReduce/X86/postinc-iv-used-by-urem-and-udiv.ll
+54-1clang/lib/CodeGen/BackendUtil.cpp
+560-30740 files not shown
+735-43046 files

LLVM/project 3e7fb59clang/include/clang/Basic CodeGenOptions.def, clang/include/clang/Options Options.td

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+251-94llvm/test/Transforms/LoopStrengthReduce/X86/bin_power.ll
+54-1clang/lib/CodeGen/BackendUtil.cpp
+32-6llvm/test/Transforms/LoopStrengthReduce/pr25541.ll
+9-0clang/include/clang/Options/Options.td
+1-0clang/include/clang/Basic/CodeGenOptions.def
+347-1015 files

LLVM/project eeafba3clang/include/clang/Basic CodeGenOptions.def, clang/include/clang/Options Options.td

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

Created using spr 1.3.7

[skip ci]
DeltaFile
+54-1clang/lib/CodeGen/BackendUtil.cpp
+9-0clang/include/clang/Options/Options.td
+1-0clang/include/clang/Basic/CodeGenOptions.def
+64-13 files

LLVM/project 96a878dllvm/docs/AMDGPU AMDGPUAsmGFX950.rst gfx950_operands.rst, llvm/test/CodeGen/AArch64 itofp-bf16.ll

rebase

Created using spr 1.3.7
DeltaFile
+2,832-1,746llvm/test/CodeGen/AArch64/itofp-bf16.ll
+3,583-866llvm/test/CodeGen/RISCV/fpclamptosat.ll
+2,148-0llvm/docs/AMDGPU/AMDGPUAsmGFX950.rst
+1,792-0llvm/test/CodeGen/RISCV/bitint-fp-conv-200.ll
+739-739llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
+1,390-0llvm/docs/AMDGPU/gfx950_operands.rst
+12,484-3,351990 files not shown
+50,772-27,836996 files

LLVM/project c2e02ballvm/docs/AMDGPU AMDGPUAsmGFX950.rst gfx950_operands.rst, llvm/test/CodeGen/AArch64 itofp-bf16.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+2,832-1,746llvm/test/CodeGen/AArch64/itofp-bf16.ll
+3,583-866llvm/test/CodeGen/RISCV/fpclamptosat.ll
+2,148-0llvm/docs/AMDGPU/AMDGPUAsmGFX950.rst
+1,792-0llvm/test/CodeGen/RISCV/bitint-fp-conv-200.ll
+739-739llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
+1,390-0llvm/docs/AMDGPU/gfx950_operands.rst
+12,484-3,351990 files not shown
+50,772-27,836996 files

LLVM/project ecc283aflang-rt/lib/runtime environment.cpp

[flang-rt] Fix warnings on Windows (#191562)

When building the LLVM installer on Windows, fix CRT / dllimport
mismatch and unused locals / tautological comparisons in env handling.
DeltaFile
+4-5flang-rt/lib/runtime/environment.cpp
+4-51 files

LLVM/project b952185flang/lib/Semantics resolve-directives.cpp

[flang] clang-format flang/lib/Semantics/resolve-directives.cpp

The changes are only on 5 lines, but now the entire file is invariant
under clang-format.
DeltaFile
+5-5flang/lib/Semantics/resolve-directives.cpp
+5-51 files

LLVM/project 0c0ae37clang/lib/Format FormatToken.cpp

[clang-format] Update QtPropertyKeywords to Qt 6.11 documentation (#190543)

Qt 6.11 added `OVERRIDE` and `VIRTUAL` keywords to the [property
system](https://doc.qt.io/qt-6.11/properties.html).
DeltaFile
+4-4clang/lib/Format/FormatToken.cpp
+4-41 files

LLVM/project ed395c8llvm/test/CodeGen/AMDGPU freeze.ll load-global-i16.ll

[AMDGPU] Use value's DebugLoc for bitcast in performStoreCombine (#186766)

## Description

When `AMDGPUTargetLowering::performStoreCombine` inserts a synthetic
bitcast to convert vector types (e.g. `<1 x float>` → `i32`) for stores,
the bitcast inherits the **store's** SDLoc. When
`DAGCombiner::visitBITCAST` later folds `bitcast(load)` → `load`, the
resulting load loses its original debug location.

## Analysis

The bitcast is **not** present in the initial SelectionDAG — it is
inserted during DAGCombine by
`AMDGPUTargetLowering::performStoreCombine`. This can be observed with
`-debug-only=isel,dagcombine`:

```
Initial selection DAG: no bitcast, load is v1f32 directly used by store

    [59 lines not shown]
DeltaFile
+2,253-17llvm/test/CodeGen/AMDGPU/freeze.ll
+140-150llvm/test/CodeGen/AMDGPU/load-global-i16.ll
+88-146llvm/test/CodeGen/AMDGPU/load-constant-i64.ll
+94-94llvm/test/CodeGen/AMDGPU/load-local-i16.ll
+83-83llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
+70-75llvm/test/CodeGen/AMDGPU/load-constant-i16.ll
+2,728-5657 files not shown
+2,819-63013 files

LLVM/project c382b58llvm/include/llvm/CodeGen AsmPrinterAnalysis.h, llvm/include/llvm/Passes CodeGenPassBuilder.h

[AsmPrinter] Use AsmPrinterAnalysis to hold AsmPrinter

AsmPrinter needs to hold state between doInitialization,
runOnMachineFunction, and doFinalization, which are all separate passes
in the NewPM. Storing this state externally somewhere like
MachineModuleInfo or a new analysis is possible, but a bit messy given
some state, particularly EHHandler objects, has backreferences into the
AsmPrinter and assumes there is a single AsmPrinter throughout the
entire compilation. So instead, store AsmPrinter in an analysis that
stays constant throughout compilation which solves all these problems.
This also means we can also just let AsmPrinter continue to own the
MCStreamer, which means object file emission should work after this as
well.

This does require passing the ModuleAnalysisManager into
buildCodeGenPipeline to register the AsmPrinterAnalysis, but that seems
pretty reasonable to do.

Reviewers: paperchalice, RKSimon, arsenm

Pull Request: https://github.com/llvm/llvm-project/pull/191535
DeltaFile
+53-0llvm/include/llvm/CodeGen/AsmPrinterAnalysis.h
+25-22llvm/include/llvm/Passes/CodeGenPassBuilder.h
+13-19llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
+10-15llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
+0-21llvm/lib/Target/X86/X86AsmPrinter.h
+10-11llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
+111-887 files not shown
+135-11313 files

LLVM/project f6b0083llvm/include/llvm/Passes CodeGenPassBuilder.h, llvm/lib/Target/X86 X86CodeGenPassBuilder.cpp

feedback

Created using spr 1.3.7
DeltaFile
+1-2llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
+1-1llvm/include/llvm/Passes/CodeGenPassBuilder.h
+2-32 files

LLVM/project a804948clang/lib/CodeGen BackendUtil.cpp, llvm/include/llvm/Passes CodeGenPassBuilder.h

feedback

Created using spr 1.3.7
DeltaFile
+4-1clang/lib/CodeGen/BackendUtil.cpp
+1-2llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
+1-1llvm/include/llvm/Passes/CodeGenPassBuilder.h
+6-43 files

LLVM/project 3f644d0llvm/include/llvm/Passes CodeGenPassBuilder.h, llvm/lib/Target/X86 X86CodeGenPassBuilder.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1-2llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
+1-1llvm/include/llvm/Passes/CodeGenPassBuilder.h
+2-32 files

LLVM/project f428a30clang-tools-extra/test/clang-tidy/infrastructure custom-query-check.cpp

add compile_commands.json instead

Created using spr 1.3.8-wip
DeltaFile
+2-2clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check.cpp
+2-21 files

LLVM/project fde16a1clang-tools-extra/clang-doc Representation.cpp

fix formatting
DeltaFile
+21-13clang-tools-extra/clang-doc/Representation.cpp
+21-131 files

LLVM/project 6956789llvm/lib/Target/AMDGPU AMDGPULowerModuleLDSPass.cpp, llvm/test/CodeGen/AMDGPU lower-module-lds-link-time-classify.ll lower-module-lds-link-time-multi-kernel.ll

[AMDGPU] Add object linking support for LDS and named barrier lowering in the middle end

This is the first patch in a series introducing object linking support for
AMDGPU.

This PR adds the -amdgpu-enable-object-linking flag to enable object linking in
the backend. It also updates the AMDGPULowerModuleLDSPass and
AMDGPULowerExecSync passes to support lowering LDS and named barrier globals
when object linking is enabled.
DeltaFile
+164-0llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
+73-0llvm/test/CodeGen/AMDGPU/lower-module-lds-link-time-classify.ll
+62-0llvm/test/CodeGen/AMDGPU/lower-module-lds-link-time-multi-kernel.ll
+52-0llvm/test/CodeGen/AMDGPU/lower-module-lds-link-time-multi-lds-per-func.ll
+50-0llvm/test/CodeGen/AMDGPU/lower-module-lds-link-time-internal-multi-user.ll
+50-0llvm/test/CodeGen/AMDGPU/lower-module-lds-link-time-transitive.ll
+451-06 files not shown
+620-012 files

LLVM/project 2a54bf5llvm/lib/Target/AMDGPU AMDGPULowerModuleLDSPass.cpp

[NFC][AMDGPU] clang-format llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp (#191647)
DeltaFile
+2-2llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
+2-21 files

LLVM/project 0fd821dclang/lib/Sema SemaConcept.cpp SemaTemplateInstantiate.cpp, clang/test/SemaCXX cxx2c-fold-exprs.cpp

[Clang] Track constraint's SubstIndex only if it contains outer parameter packs (#191484)

I believe that is the intent of SubstIndex in AssociatedConstraint.
So this enforces the checking explicitly, in case nested SubstIndexes
confuses our poor constraint evaluator.

I reverted the previous fix 257cc5ad89840cdfba4affcc8fe62cf9d02d9017
because that was wrong.
As a drive-by fix, this also removes an strange assertion and an
unnecessary
SubstIndex setup in nested requirement transform.

No release note because this is a regression fix.

Fixes https://github.com/llvm/llvm-project/issues/188505
Fixes https://github.com/llvm/llvm-project/issues/190169
DeltaFile
+76-0clang/test/SemaCXX/cxx2c-fold-exprs.cpp
+11-20clang/lib/Sema/SemaConcept.cpp
+9-3clang/lib/Sema/SemaTemplateInstantiate.cpp
+4-1clang/lib/Sema/TreeTransform.h
+100-244 files

LLVM/project 3a1266fclang-tools-extra/clang-doc Representation.cpp Representation.h

[clang-doc] Avoid merging into default Info types

When merging into arenas, the code assumed that all using a default
constructed info would be safe, since in the merge we replace any
differing data. However, that appears to be a risky assumption, due
to default initialized members participating in comparisons, and
other operations, leading the program to read garbage data in some
cases. Earlier patches added default initializers to these fields,
but we should prefer (which the old code used to do) to just start
with properly initialized and complete data from the start.

This patch updates the remaining Info types to have copy constructors
that support choosing the arena to allocate into. This is already the
strategy used in several places to avoid use after free bugs. Since
the handling is now uniform, we can simplify things a bit at the same
time and extract the cloning operation into a helper, making the logic
very clear.

This should avoid any potential pitfalls or missed cases that resulted
in the errors discover after landing #190054.
DeltaFile
+87-29clang-tools-extra/clang-doc/Representation.cpp
+6-0clang-tools-extra/clang-doc/Representation.h
+93-292 files

LLVM/project 155b9b3clang-tools-extra/clang-doc Representation.h

[clang-doc][nfc] Default initialize all StringRef members (#191641)

Ensure all StringRef members are default initialized to avoid potential
bugs.
DeltaFile
+5-5clang-tools-extra/clang-doc/Representation.h
+5-51 files

LLVM/project 814fcfallvm/lib/Transforms/Vectorize SLPVectorizer.cpp

Simplifications, fixes

Created using spr 1.3.7
DeltaFile
+5-4llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+5-41 files

LLVM/project 0311157lldb/source/Plugins/Platform/MacOSX PlatformDarwin.cpp, lldb/source/Target Platform.cpp

[lldb][Platform] Use the module's FileSpec instead of the script's FileSpec when checking LoadScriptFromSymFile setting (#191473)

We were incorrectly passing the script's `FileSpec` into
`GetScriptLoadStyleForModule`. Meaning if a script name wasn't actually
the same as the module name, the `target.auto-load-scripts-for-modules`
didn't take effect.

This patch passes the module's `FileSpec` instead. For `dSYM`s we save
the original `FileSpec` because the loop tries to strip extensions until
it finds a script. But we still want to use the module's name.

**AI Usage**:
- Used Claude to write the unit-test skeletons. Then reviewed/adjusted
them manually
DeltaFile
+52-0lldb/unittests/Platform/PlatformTest.cpp
+49-0lldb/unittests/Platform/PlatformDarwinTest.cpp
+2-1lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
+1-1lldb/source/Target/Platform.cpp
+104-24 files

LLVM/project bc87c8bclang-tools-extra/clang-doc Representation.h

[clang-doc][nfc] Default initialize all StringRef members
DeltaFile
+5-5clang-tools-extra/clang-doc/Representation.h
+5-51 files

LLVM/project ccd7eb4llvm/lib/Transforms/Vectorize SLPVectorizer.cpp

Simplifications, fixes

Created using spr 1.3.7
DeltaFile
+5-4llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+5-41 files