LLVM/project cd14598llvm/lib/Target/AMDGPU AMDGPUTargetMachine.cpp

[AMDGPU][NFC] Eliminates the redundant code in the AMDGPUTargetMachine.cpp (#193169)
DeltaFile
+6-9llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
+6-91 files

LLVM/project 5ef29d1

[ADT] Add predicate based match support to StringSwitch (#188046)

This introduces `Predicate` and `IfNotPredicate` case selection to
StringSwitch to allow use cases like

```
StringSwitch<...>(..)
  .Case("foo", FooTok)
  .Predicate(isAlpha, IdentifierTok)
...
```

This is mostly useful for improving conciseness and clarity when
processing generated strings, diagnostics, and similar.
DeltaFile
+0-00 files

LLVM/project f4cc934llvm/lib/Transforms/Vectorize VPlanTransforms.cpp

[LV] NFCI: Create VPExpressions in transformToPartialReductions. (#182863)

With this change, all logic to generate partial reductions and
recognising them as VPExpressions is contained in
`transformToPartialReductions`, without the need for a second transform
pass.
The PR intends to be a non-functional change.
DeltaFile
+68-52llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+68-521 files

LLVM/project 9435160mlir/include/mlir/Dialect/LLVMIR NVVMOps.td, mlir/test/Dialect/LLVMIR nvvm_check_target_sm.mlir nvvm_check_target_sm_trait.mlir

[MLIR][NVVM] Update SM version requirements of Ops (#192257)

This change updates the SM version requirements of Ops with the
`NVVMRequiresSM` trait to include family-specific SM versions wherever
applicable.
DeltaFile
+229-0mlir/test/Dialect/LLVMIR/nvvm_check_target_sm.mlir
+160-0mlir/test/Dialect/LLVMIR/nvvm_check_target_sm_trait.mlir
+0-160mlir/test/Dialect/LLVMIR/nvvm-check-targetSM.mlir
+21-20mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
+410-1804 files

LLVM/project 2af998bllvm/include/llvm/IR LLVMContext.h ValueDeletionListener.h

review: make listener api's private
DeltaFile
+9-13llvm/include/llvm/IR/LLVMContext.h
+3-3llvm/include/llvm/IR/ValueDeletionListener.h
+12-162 files

LLVM/project a6d14dbclang/lib/AST/ByteCode Compiler.cpp, clang/test/AST/ByteCode cxx20.cpp

[clang][bytecode] Fix DefaultInitExpr base pointer in IndirectFieldDecls (#193149)

We built up an in correct set of init chain links, causing a
`DefaultInitExpr` later to pick the wrong base pointer. Fix this by
adding one link per decl (-1) in the `IndirectFieldDecl`.
DeltaFile
+10-6clang/lib/AST/ByteCode/Compiler.cpp
+13-0clang/test/AST/ByteCode/cxx20.cpp
+23-62 files

LLVM/project 1edcd74clang-tools-extra/clangd ModulesBuilder.cpp, clang-tools-extra/clangd/unittests PrerequisiteModulesTest.cpp

[clangd] [Modules] Refactor cache to support duplicated module name (#193413)

Following of https://github.com/llvm/llvm-project/pull/193158

Although https://github.com/llvm/llvm-project/pull/193158 handles
duplicated module name, the cache in ModulesBuilder still uses the old
assumption.

This patch tries to resolve the problem while not affecting original use
cases as much as possible. As the duplicated module name should be rare
in real world case.

AI Assisted
DeltaFile
+178-46clang-tools-extra/clangd/ModulesBuilder.cpp
+71-0clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
+249-462 files

LLVM/project a61de4bmlir/lib/Dialect/SPIRV/IR SPIRVTypes.cpp, mlir/test/Conversion/FuncToSPIRV types-to-spirv.mlir

[mlir][spirv][nfc] Clean up FP8 and BF16 SPIR-V type tests (#193196)

Rename the non-emulation check prefixes for clarity, expand FP8/BF16
test coverage in SPIR-V type and TensorArm tests, and simplify a few
type predicates in SPIRVTypes.cpp.

No functional change intended.

Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
DeltaFile
+146-146mlir/test/Conversion/FuncToSPIRV/types-to-spirv.mlir
+28-7mlir/test/Dialect/SPIRV/IR/types.mlir
+21-1mlir/test/Target/SPIRV/tensorARM.mlir
+4-4mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
+199-1584 files

LLVM/project bfd6ea0lld/test/ELF/linkerscript header-alloc.test sizeofheaders.s

[ELF] Improve allocateHeaders tests (#193419)
DeltaFile
+57-0lld/test/ELF/linkerscript/header-alloc.test
+0-17lld/test/ELF/linkerscript/sizeofheaders.s
+0-11lld/test/ELF/linkerscript/header-phdr2.s
+57-283 files

LLVM/project cfa6745clang-tools-extra/clangd FindTarget.cpp, clang-tools-extra/clangd/unittests FindTargetTests.cpp

[clangd] Add go-to-definition support for fields in offsetof expressions (#192953)

clangd had no handling for OffsetOfExpr in FindTarget.cpp, so
go-to-definition and find-references on field names inside
__builtin_offsetof(Type, field) produced no results.

Fix this by adding VisitOffsetOfExpr to both visitors:
- The TargetFinder visitor in add(const Stmt*) so that allTargetDecls()
resolves the referenced FieldDecl(s).
- The refInStmt visitor so that findExplicitReferences() emits a
ReferenceLoc per field component, enabling find-references and rename to
locate each field at its source position.

Each OffsetOfNode of kind Field is visited; Identifier nodes (unresolved
dependent-type designators) and Base nodes (implicit base-class
indirections) are intentionally skipped.

Repro:
```                                                                                                                                                                                                                                             

    [2 lines not shown]
DeltaFile
+62-0clang-tools-extra/clangd/unittests/FindTargetTests.cpp
+22-0clang-tools-extra/clangd/FindTarget.cpp
+84-02 files

LLVM/project efa0f22llvm/lib/Target/RISCV/MCTargetDesc RISCVELFStreamer.cpp RISCVELFStreamer.h, llvm/test/MC/RISCV mapping-isa-option-rv32.s mapping-isa-option-rv64.s

[RISCV][MC] Emit ISA mapping symbols on .option arch/rvc/norvc/pop (#193123)

When .option arch, .option rvc, .option norvc, or .option pop changes
the active ISA, emit a "$x<ISAString>" mapping symbol before the next
instruction so that tools can determine the ISA in effect for each code
region.

Also emit ISA mapping symbols on begin of first instruction to make sure
link with different object still can disassemble correctly.

Based on #67541

---------

Co-authored-by: Joseph.Faulls <Joseph.Faulls at imgtec.com>
DeltaFile
+70-8llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
+75-0llvm/test/MC/RISCV/mapping-isa-option-rv32.s
+75-0llvm/test/MC/RISCV/mapping-isa-option-rv64.s
+30-0llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h
+28-0llvm/test/MC/RISCV/mapping-isa-option-rvc-dedup.s
+17-0llvm/test/MC/RISCV/mapping-isa-attribute.s
+295-83 files not shown
+320-159 files

LLVM/project fde2e27clang/lib/Sema SemaDeclCXX.cpp, clang/test/SemaCXX warn-weak-vtables.cpp

[clang][modules] Fix false positive -Wweak-vtables in named modules (#193136)

The -Wweak-vtables warning was incorrectly firing for classes defined in
C++20 module units. This warning does not apply to module units as the
vtable should be owned by the module and emitted only once.

Fixes #193004
DeltaFile
+102-82clang/test/SemaCXX/warn-weak-vtables.cpp
+4-1clang/lib/Sema/SemaDeclCXX.cpp
+106-832 files

LLVM/project bb76209llvm/lib/Passes PassBuilderPipelines.cpp, llvm/test/Other new-pm-defaults.ll new-pm-thinlto-postlink-pgo-defaults.ll

Reapply "[JTS][Passes] Enable JTS By Default" (#193409)

Reverts llvm/llvm-project#193399

The last assertion failure seen on the BOLT buildbot should be fixed by
ee06802dc4a85b4a05ae75c1853bca8e58f76f6d.
DeltaFile
+1-5llvm/test/Other/new-pm-defaults.ll
+2-2llvm/lib/Passes/PassBuilderPipelines.cpp
+1-0llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
+1-0llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
+1-0llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
+1-0llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
+7-72 files not shown
+9-78 files

LLVM/project 0f4fb3bllvm/include/llvm/MC MCPseudoProbe.h

[NFC] [MC] Fixed rule-of-five for MCPseudoProbeDecoder class (#193181)

- Added destructor for **MCPseudoProbeDecoder** class as rule of five
(https://en.cppreference.com/cpp/language/rule_of_three)
DeltaFile
+1-0llvm/include/llvm/MC/MCPseudoProbe.h
+1-01 files

LLVM/project 554edb2lld/test/ELF/linkerscript memory-include.test

[ELF,test] Cover empty INCLUDE inside MEMORY { ... } (#193411)
DeltaFile
+22-0lld/test/ELF/linkerscript/memory-include.test
+22-01 files

LLVM/project c10f290lld/test/ELF/linkerscript output-section-include.test section-include.test, lldb/test/API/functionalities/always-run-threads main.cpp

comment

Created using spr 1.3.7
DeltaFile
+24-11lld/test/ELF/linkerscript/output-section-include.test
+23-11lld/test/ELF/linkerscript/section-include.test
+31-0llvm/test/Transforms/JumpTableToSwitch/profile-no-guid-metadata.ll
+30-0llvm/test/TableGen/AsmMatcherFullCustomConversionMethod.td
+18-8lld/test/ELF/linkerscript/memory-include.test
+7-6lldb/test/API/functionalities/always-run-threads/main.cpp
+133-3621 files not shown
+159-6727 files

LLVM/project a5d5641lld/test/ELF/linkerscript output-section-include.test section-include.test, lldb/test/API/functionalities/always-run-threads main.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+24-11lld/test/ELF/linkerscript/output-section-include.test
+23-11lld/test/ELF/linkerscript/section-include.test
+31-0llvm/test/Transforms/JumpTableToSwitch/profile-no-guid-metadata.ll
+30-0llvm/test/TableGen/AsmMatcherFullCustomConversionMethod.td
+18-8lld/test/ELF/linkerscript/memory-include.test
+7-6lldb/test/API/functionalities/always-run-threads/main.cpp
+133-3620 files not shown
+158-6626 files

LLVM/project 45617c9lld/test/ELF/linkerscript output-section-include.test section-include.test, lldb/test/API/functionalities/always-run-threads main.cpp

comment

Created using spr 1.3.7
DeltaFile
+24-11lld/test/ELF/linkerscript/output-section-include.test
+23-11lld/test/ELF/linkerscript/section-include.test
+31-0llvm/test/Transforms/JumpTableToSwitch/profile-no-guid-metadata.ll
+30-0llvm/test/TableGen/AsmMatcherFullCustomConversionMethod.td
+18-8lld/test/ELF/linkerscript/memory-include.test
+7-6lldb/test/API/functionalities/always-run-threads/main.cpp
+133-3620 files not shown
+158-6626 files

LLVM/project 40ec7adclang/lib/AST/ByteCode Compiler.cpp, clang/test/CodeGen/AArch64 neon-misc.c

message

Created using spr 1.3.7
DeltaFile
+868-0llvm/test/CodeGen/AArch64/hadd-combine-scalar.ll
+474-121clang/lib/AST/ByteCode/Compiler.cpp
+459-0llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-spill-multi-store-mir.mir
+0-428llvm/test/CodeGen/AArch64/xtn.ll
+355-0clang/test/CodeGen/AArch64/neon/vpaddl.c
+0-308clang/test/CodeGen/AArch64/neon-misc.c
+2,156-857302 files not shown
+7,499-2,433308 files

LLVM/project fe6dd83clang/lib/AST/ByteCode Compiler.cpp, clang/test/CodeGen/AArch64 neon-misc.c

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+868-0llvm/test/CodeGen/AArch64/hadd-combine-scalar.ll
+474-121clang/lib/AST/ByteCode/Compiler.cpp
+459-0llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-spill-multi-store-mir.mir
+0-428llvm/test/CodeGen/AArch64/xtn.ll
+355-0clang/test/CodeGen/AArch64/neon/vpaddl.c
+0-308clang/test/CodeGen/AArch64/neon-misc.c
+2,156-857301 files not shown
+7,492-2,428307 files

LLVM/project 9734c34clang-tools-extra/clang-tidy/tool check_update_docs.py, clang/lib/Analysis UnsafeBufferUsage.cpp

rebase

Created using spr 1.3.7
DeltaFile
+251-0llvm/unittests/MC/DwarfDebugFrameCIE.cpp
+35-120lldb/examples/darwin/heap_find/heap.py
+66-57clang/lib/Analysis/UnsafeBufferUsage.cpp
+104-0llvm/test/Transforms/LowerTypeTests/x86-jumptable-dbg.ll
+69-27llvm/lib/DebugInfo/PDB/Native/SymbolCache.cpp
+93-0clang-tools-extra/clang-tidy/tool/check_update_docs.py
+618-20435 files not shown
+1,171-35441 files

LLVM/project 3c3966dllvm/lib/Passes PassBuilderPipelines.cpp, llvm/test/Other new-pm-defaults.ll new-pm-thinlto-postlink-samplepgo-defaults.ll

Revert "Revert "[JTS][Passes] Enable JTS By Default" (#193399)"

This reverts commit a843c699cc89c92ca60afc866d7257362796c416.
DeltaFile
+1-5llvm/test/Other/new-pm-defaults.ll
+2-2llvm/lib/Passes/PassBuilderPipelines.cpp
+1-0llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
+1-0llvm/test/Other/new-pm-thinlto-prelink-defaults.ll
+1-0llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
+1-0llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
+7-72 files not shown
+9-78 files

LLVM/project ee06802llvm/lib/Transforms/Scalar JumpTableToSwitch.cpp, llvm/test/Transforms/JumpTableToSwitch profile-no-guid-metadata.ll

[JTS] Correctly handle all zero profile values in VP metadata (#193402)

We can end up with cases where the VP metadata only has zero profile
values, for example if all of the functions end up being external and
uninstrumented. This caused fixes an assertion failure on the BOLT
builder that came up last time we tried to turn the pass on by default.
DeltaFile
+31-0llvm/test/Transforms/JumpTableToSwitch/profile-no-guid-metadata.ll
+5-3llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
+36-32 files

LLVM/project dee5769lldb/test/API/functionalities/always-run-threads main.cpp TestAlwaysRunThreadNames.py

[lldb] Fix potential TestAlwaysRunThreadNames flakiness (#193405)

Change the stepped function to spin on a flag until the helper thread
advances the counter, so the step-over can only complete if the helper
thread actually ran.

Fixes #193398
DeltaFile
+7-6lldb/test/API/functionalities/always-run-threads/main.cpp
+7-3lldb/test/API/functionalities/always-run-threads/TestAlwaysRunThreadNames.py
+14-92 files

LLVM/project df53d34llvm/include/llvm/IR LLVMContext.h, llvm/lib/IR LLVMContext.cpp Value.cpp

review: address suggestion
DeltaFile
+5-0llvm/lib/IR/LLVMContext.cpp
+5-0llvm/include/llvm/IR/LLVMContext.h
+1-3llvm/lib/IR/Value.cpp
+11-33 files

LLVM/project bf7ced3lldb/test/API/functionalities/thread/jump Makefile, lldb/test/API/python_api/lldbutil/process Makefile

[lldb] Remove ENABLE_THREADS from Makefiles that don't need it (#193363)

Likely these Makefiles were copy/pasted.
DeltaFile
+0-3lldb/test/API/tools/lldb-dap/stepInTargets/Makefile
+0-2lldb/test/API/tools/lldb-dap/step/Makefile
+0-2lldb/test/API/tools/lldb-dap/save-core/Makefile
+0-1lldb/test/API/python_api/module_section/Makefile
+0-1lldb/test/API/python_api/lldbutil/process/Makefile
+0-1lldb/test/API/functionalities/thread/jump/Makefile
+0-102 files not shown
+0-128 files

LLVM/project d0bb0c8lld/test/ELF/linkerscript output-section-include.test section-include.test

[ELF,test] Convert INCLUDE tests to split-file pattern (#193403)

Preparatory for adding negative test cases.
DeltaFile
+24-11lld/test/ELF/linkerscript/output-section-include.test
+23-11lld/test/ELF/linkerscript/section-include.test
+18-8lld/test/ELF/linkerscript/memory-include.test
+65-303 files

LLVM/project b3a5d14lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime AppleObjCRuntimeV2.cpp

[lldb] Doxygenify comments in AppleObjCRuntimeV2 (NFC) (#193401)
DeltaFile
+2-2lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
+2-21 files

LLVM/project eb4296fllvm/test/TableGen AsmMatcherFullCustomConversionMethod.td, llvm/utils/TableGen AsmMatcherEmitter.cpp

[llvm-mc][AsmMatcherEmitter] Fix the minimum ConversionTable entry size (#191977)

When working on a target with fully customized instruction
conversion method, there's a build failure due to the case that in the
target's generated asm matcher, the size of `ConversionTable` entry is 2
(i.e., the minimum size defined in `AsmMatcherEmitter` TableGen
backend).

However, for a target that has customized conversion method for all
instructions, a `ConversionTable` entry should be looking like: `{
CVT_<the-custom-conversion-method>, <the-position-of-operand>, CVT_Done
}`, where the position of operand for custom conversion is by-default 0.

This commit includes a test case to illustrate this scenario, along with
a little fix.
DeltaFile
+30-0llvm/test/TableGen/AsmMatcherFullCustomConversionMethod.td
+4-1llvm/utils/TableGen/AsmMatcherEmitter.cpp
+34-12 files

LLVM/project 9945632llvm/utils/TableGen/Common/GlobalISel GlobalISelMatchTable.cpp

test
DeltaFile
+1-1llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
+1-11 files