LLVM/project f40c8e7lld/ELF Target.h

ELF: Remove stray ;. NFC
DeltaFile
+1-1lld/ELF/Target.h
+1-11 files

LLVM/project fde8dc7clang/include/clang/Basic BuiltinsAMDGPU.def, clang/lib/CodeGen/TargetBuiltins AMDGPU.cpp

[AMDGPU] Add builtins for wave reduction intrinsics
DeltaFile
+84-0clang/test/CodeGenOpenCL/builtins-amdgcn.cl
+8-0clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
+4-0clang/include/clang/Basic/BuiltinsAMDGPU.def
+96-03 files

LLVM/project d0d9992llvm/lib/Target/AMDGPU SIISelLowering.cpp SIInstructions.td, llvm/test/CodeGen/AMDGPU llvm.amdgcn.reduce.fadd.ll llvm.amdgcn.reduce.fsub.ll

[AMDGPU] Add wave reduce intrinsics for double types - 2

Supported Ops: `add`, `sub`
DeltaFile
+1,115-0llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
+1,102-0llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
+80-19llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+2-0llvm/lib/Target/AMDGPU/SIInstructions.td
+2,299-194 files

LLVM/project efda519llvm/test/Transforms/LoopVectorize/AArch64 predicated-costs.ll

[LV] Use branch_weights metadata in getPredBlockCostDivisor test. NFC (#171299)

This is more reliable in the event that the trivial fcmp gets folded
away.
DeltaFile
+13-10llvm/test/Transforms/LoopVectorize/AArch64/predicated-costs.ll
+13-101 files

LLVM/project d18cdc9llvm/include/llvm/TargetParser RISCVTargetParser.h, llvm/lib/Target/RISCV RISCVInsertVSETVLI.cpp

[RISCVInsertVSETVLI] Don't allow getSEW/getLMUL to be called for hasSEWLMULRatioOnly(). NFC (#171554)

Refactor some logic in transferBefore to handle hasSEWLMULRatioOnly()
before calling getSEW/getLMUL.

Update adjustIncoming to use getSEWLMULRatio(). Update the interface of
RISCVVType::getSameRatioLMUL to take the ratio instead of SEW and LMUL.
Update the few other callers to call RISCVVType::getSEWLMULRatio first.
DeltaFile
+21-21llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
+12-6llvm/unittests/TargetParser/RISCVTargetParserTest.cpp
+2-1llvm/lib/Target/RISCV/MCA/RISCVCustomBehaviour.cpp
+1-2llvm/lib/TargetParser/RISCVTargetParser.cpp
+1-2llvm/include/llvm/TargetParser/RISCVTargetParser.h
+37-325 files

LLVM/project fcdac81llvm/lib/Target/RISCV RISCVInstrInfoF.td

[RISCV] Use frmarg instead of ixlenimm in PseudoFROUND. NFC (#171563)

This is expanded with a custom inserter and this immediate will be
copied to the frm operand of a non-pseudo instruction.
DeltaFile
+1-1llvm/lib/Target/RISCV/RISCVInstrInfoF.td
+1-11 files

LLVM/project 13d99e3llvm/lib/Target/RISCV RISCVSchedSiFiveP600.td

[RISCV] Fix wrong use of SiFiveP400GetVLMAX in RISCVSchedSiFiveP600 (#171562)

There is no difference of functionality and I believe this is a
copy-paste mistake. :-)
DeltaFile
+1-1llvm/lib/Target/RISCV/RISCVSchedSiFiveP600.td
+1-11 files

LLVM/project 7464b86llvm/lib/Target/AArch64 AArch64Features.td AArch64Processors.td, llvm/test/CodeGen/AArch64 sve-st1-addressing-mode-reg-imm.ll sve-ld1-addressing-mode-reg-imm.ll

[AArch64][SVE] Add SubtargetFeature to disable lowering unpredicated loads/stores as LDR/STR (#170256)

PR #127837 changed the lowering for unpredicated loads/stores to use LDR/STR instead of LD1/ST1.
However, on some CPUs, such as A64FX, there is a performance difference between LD1/ST1 and LDR/STR.
As a result, the lowering introduced in #127837 can cause a performance regression on these targets.
This patch adds a SubtargetFeature `disable-unpredicated-ld-st-lower` to disable this lowering.
It is enabled for the A64FX target.
DeltaFile
+102-0llvm/test/CodeGen/AArch64/sve-st1-addressing-mode-reg-imm.ll
+100-0llvm/test/CodeGen/AArch64/sve-ld1-addressing-mode-reg-imm.ll
+4-0llvm/lib/Target/AArch64/AArch64Features.td
+2-1llvm/lib/Target/AArch64/AArch64Processors.td
+2-0llvm/lib/Target/AArch64/AArch64InstrInfo.td
+1-1llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
+211-26 files

LLVM/project 2ea1bfdllvm/lib/Target/AMDGPU SIShrinkInstructions.cpp

[AMDGPU] Make SIShrinkInstructions pass return valid changed state
DeltaFile
+60-35llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
+60-351 files

LLVM/project 2f61427llvm/lib/Target/AMDGPU SIShrinkInstructions.cpp

clang-format
DeltaFile
+5-3llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
+5-31 files

LLVM/project aebab05llvm/include/llvm/Passes CodeGenPassBuilder.h, llvm/test/CodeGen/AMDGPU llc-pipeline-npm.ll

[NPM] Schedule PhysicalRegisterUsageAnalysis before RegUsageInfoCollectorPass (#168832)

RegUsageInfoCollectorPass requires PhysicalRegisterUsageAnalysis to be valid. this change is required since its a module analysis.
DeltaFile
+3-3llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
+3-1llvm/include/llvm/Passes/CodeGenPassBuilder.h
+6-42 files

LLVM/project 570bceacompiler-rt/lib/scudo/standalone primary64.h

[scudo] Add last release time info to getStats (#170902)

Knowing when the last page release happened can help us figure out if
the page release is skipped or not.
DeltaFile
+15-1compiler-rt/lib/scudo/standalone/primary64.h
+15-11 files

LLVM/project 21871bbllvm/lib/Target/RISCV RISCVISelLowering.cpp RISCVRegisterInfo.td, llvm/test/CodeGen/RISCV/rvv pr171141.ll subregister-undef-early-clobber.mir

[RISCV] Add fractional LMUL register classes for inline assembly. (#171278)

Inline assembly uses the first type from the register class to
connect to the rest of SelectionDAG. By adding fractional LMUL
register classes, we can ensure that this type is the size of the
types we use for fractional LMUL in the rest of SelectionDAG.

This allows us to remove some of the handling we had in
splitValueIntoRegisterParts/joinRegisterPartsIntoValue. This code
was incorrectly handling v16i4 arguments/returns which should be
any_extend to v16i8 to match type legalization. Instead we widened
v16i4 -> v32i4 then bitcasted to v16i8. This merged pairs of i4
elements into an i8 element instead of keeping them as separate
elements that have been extended to i8.

This is an alternative to #171243.
    
Fixes #171141.
DeltaFile
+27-24llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+18-1llvm/lib/Target/RISCV/RISCVRegisterInfo.td
+12-0llvm/test/CodeGen/RISCV/rvv/pr171141.ll
+2-2llvm/test/CodeGen/RISCV/rvv/subregister-undef-early-clobber.mir
+59-274 files

LLVM/project 84e4a4cclang/include/clang/Basic Builtins.def, clang/lib/AST ASTContext.cpp

[AMDGPU] Removal of language sensitive option for _Float16 and half( 'e') handling
DeltaFile
+2-6clang/lib/AST/ASTContext.cpp
+0-1clang/include/clang/Basic/Builtins.def
+2-72 files

LLVM/project 0bac8f1clang/lib/Format TokenAnnotator.cpp, clang/unittests/Format TokenAnnotatorTest.cpp

[clang-format] Handle templates in qualified typenames (#143194)

This fixes the `SpaceBeforeParensOptions.AfterFunctionDeclarationName`
and `SpaceBeforeParensOptions.AfterFunctionDefinitionName` options not
adding spaces when a template type's constructor or destructor is
forward declared or defined outside of the type definition.

Attribution Note - I have been authorized to contribute this change on
behalf of my company: ArenaNet LLC
DeltaFile
+64-7clang/lib/Format/TokenAnnotator.cpp
+55-0clang/unittests/Format/TokenAnnotatorTest.cpp
+119-72 files

LLVM/project e7015c9compiler-rt/lib/sanitizer_common sanitizer_posix.h

[compiler-rt] Fix usage of `stdin`/`stdout` (#171560)

From #170809.

Causes compile errors when `stdin`/`stdout` are #defined in stdio.h.
DeltaFile
+1-1compiler-rt/lib/sanitizer_common/sanitizer_posix.h
+1-11 files

LLVM/project ec84dea.github/workflows release-documentation.yml

workflows/release-documentation: Fix pull request creation (#168981)

DeltaFile
+1-1.github/workflows/release-documentation.yml
+1-11 files

LLVM/project a8a1551mlir/include/mlir/Dialect/OpenACC OpenACCOps.td, mlir/lib/Dialect/OpenACC/IR OpenACC.cpp

[acc] RegionBranchOpInterface for acc regions (#171533)

Defining RegionBranchOpInterface for acc regions will help dataflow
analysis to propagate IN/OUT sets without losing information
DeltaFile
+50-37mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
+55-0mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
+105-372 files

LLVM/project 8b87edfllvm/lib/Analysis InstructionSimplify.cpp, llvm/test/Transforms/InstSimplify vp-reverse.ll

[InstSimplify] Ignore mask when combinining vp.reverse(vp.reverse). (#171542)

The mask doesn't really affect the reverse. It only poisons the masked
off elements in the results. It should be ok to ignore the mask if we
can eliminate the pair.

I don't have a specific use case for this, but it matches what I had
implemented in our downstream before the current upstream
implementation. Submitting upstream so I can remove the delta
in my downstream.
DeltaFile
+9-0llvm/test/Transforms/InstSimplify/vp-reverse.ll
+3-5llvm/lib/Analysis/InstructionSimplify.cpp
+12-52 files

LLVM/project c642fa0llvm/lib/Target/AArch64 AArch64AsmPrinter.cpp, llvm/test/CodeGen/AArch64 ptrauth-reloc.ll ptrauth-irelative.ll

AArch64: Relax restriction on discriminator when PAuth ifunc used.

When a PAuth ifunc is being used, we can represent any discriminator that
we want in the code and don't need to be restricted to 16 bits. For now we
only need this capability for address discriminated ptrauth expressions,
so keep the restriction in place for other discriminators.

Reviewers: atrosinenko, fmayer

Reviewed By: fmayer

Pull Request: https://github.com/llvm/llvm-project/pull/170945
DeltaFile
+14-9llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
+17-0llvm/test/CodeGen/AArch64/ptrauth-reloc.ll
+13-0llvm/test/CodeGen/AArch64/ptrauth-irelative.ll
+44-93 files

LLVM/project 390f17fllvm/lib/Target/AArch64 AArch64AsmPrinter.cpp, llvm/test/CodeGen/AArch64 ptrauth-irelative.ll

AArch64: Emit PAuth ifuncs into the same comdat as the containing global.

PAuth ifuncs contain a relocation pointing to the section they are
relocating (the place), so they need to be in the same comdat in order
to avoid relocations pointing to discarded sections.

Reviewers: atrosinenko, kovdan01, fmayer

Reviewed By: fmayer

Pull Request: https://github.com/llvm/llvm-project/pull/170944
DeltaFile
+8-2llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
+6-0llvm/test/CodeGen/AArch64/ptrauth-irelative.ll
+14-22 files

LLVM/project 01c4eb5clang-tools-extra/clangd GlobalCompilationDatabase.cpp GlobalCompilationDatabase.h, clang-tools-extra/clangd/tool ClangdMain.cpp Check.cpp

Revert "[clangd] Add a (currently hidden) --strong-workspace-mode flag (#155905)"

This reverts commit 2fa492726e774c050d6f21d57990c8bfbd7f1400.

This caused sanitizer bots to fail and sanitizer errors to show up in
our downstream testing:

```
[ RUN      ] LSPTest.DiagnosticsHeaderSaved
<<< initialize: {}
<-- initialize(0)
third_party/llvm/llvm-project/clang-tools-extra/clangd/ClangdLSPServer.cpp:557:14: runtime error: load of value 112, which is not a valid value for type 'bool'
```

With ASan at -O1.
DeltaFile
+9-32clang-tools-extra/clangd/GlobalCompilationDatabase.cpp
+5-21clang-tools-extra/clangd/GlobalCompilationDatabase.h
+0-14clang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp
+0-12clang-tools-extra/clangd/tool/ClangdMain.cpp
+2-6clang-tools-extra/clangd/tool/Check.cpp
+0-5clang-tools-extra/clangd/ClangdServer.h
+16-901 files not shown
+16-927 files

LLVM/project 468cffbllvm/test/CodeGen/RISCV/rvv vfadd-sdnode.ll

[NFC][RISCV] Make vfadd attribute list follow other tests (#170864)

DeltaFile
+147-23llvm/test/CodeGen/RISCV/rvv/vfadd-sdnode.ll
+147-231 files

LLVM/project b0e8c3cutils/bazel/llvm-project-overlay/mlir BUILD.bazel

Fix bazel build for 21147e7c95c03f554d4a7fb9b55b8e459357eb49
DeltaFile
+3-0utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+3-01 files

LLVM/project 09eb25fflang/docs OptionComparison.md

[flang][docs] Replace Flang to Classic Flang in old doc (#171558)

This document was written when Flang was known as F18 and Classic Flang
was known as Flang. The term "Flang" in this document refers to Classic
Flang, except in the first paragraph.

Also, a trivial HTML error is fixed.
DeltaFile
+15-15flang/docs/OptionComparison.md
+15-151 files

LLVM/project 17b13e9flang/docs Unsigned.md

[flang][docs] Correct the title in Unsigned.md (#171553)

Probablly the original author copied `Extensions.md` and forgot to
change the title.
DeltaFile
+1-1flang/docs/Unsigned.md
+1-11 files

LLVM/project f309fabllvm/lib/Target/RISCV/GISel RISCVLegalizerInfo.cpp, llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv legalize-insert-subvector.mir

[RISCV][GISel] Fix legalizer of G_INSERT_SUBVECTOR (#171091)

Fix early exit condition and use the right type as mask type of
vslideup.
DeltaFile
+274-48llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-insert-subvector.mir
+2-2llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
+276-502 files

LLVM/project 7533d56mlir/lib/Conversion/ArithAndMathToAPFloat ArithToAPFloat.cpp MathToAPFloat.cpp, mlir/lib/Conversion/ArithToAPFloat ArithToAPFloat.cpp

[mlir][math] Add FP software implementation lowering pass: math-to-apfloat
DeltaFile
+0-665mlir/lib/Conversion/ArithToAPFloat/ArithToAPFloat.cpp
+623-0mlir/lib/Conversion/ArithAndMathToAPFloat/ArithToAPFloat.cpp
+148-0mlir/lib/Conversion/ArithAndMathToAPFloat/MathToAPFloat.cpp
+49-0mlir/lib/Conversion/ArithAndMathToAPFloat/CMakeLists.txt
+47-1mlir/lib/ExecutionEngine/APFloatWrappers.cpp
+39-0mlir/lib/Dialect/Func/Utils/Utils.cpp
+906-66610 files not shown
+1,040-69116 files

LLVM/project 4582a80clang/lib/Format UnwrappedLineParser.cpp, clang/unittests/Format TokenAnnotatorTest.cpp

release/21.x: [clang-format] Fix a regression in annotating star before lambda (#170969)

Backport 4930e94011f6c62231de880273821d453dae0f14
DeltaFile
+4-4clang/lib/Format/UnwrappedLineParser.cpp
+6-0clang/unittests/Format/TokenAnnotatorTest.cpp
+10-42 files

LLVM/project a565880clang/lib/Format WhitespaceManager.cpp, clang/unittests/Format FormatTest.cpp

[clang-format] Fix a crash in AlignArrayOfStructures (#167099)

Fixes #157405

(cherry picked from commit 836919bb34493333767fc1734e402d3ebf989acb)
DeltaFile
+13-0clang/unittests/Format/FormatTest.cpp
+4-1clang/lib/Format/WhitespaceManager.cpp
+17-12 files