LLVM/project 0f4c8ddlldb/test/API/functionalities/thread/step_until function.list

[lldb][test] Fix ThreadStepUntilAPI.py

After #167359 / 95db31e7f69e7008f0c570ed30d54d1e418e10f2.

A fix was attempted in #167423 but was not quite enough.

From what I could understand, in v1 format you have to specify
all the basic blocks. Where before !call_me implied they were all
cold (I think, very shaky understanding here).

For this test we want to see blocks like call_me/foo/call_me.
So adding a line for block 1 fixes the tests.

It could produce more blocks at some point but I think as long
as foo is within two of them, it'll be fine.
DeltaFile
+1-0lldb/test/API/functionalities/thread/step_until/function.list
+1-01 files

LLVM/project efc0ab0llvm/test/Analysis/CostModel/AArch64 sve-arith-fp.ll

[AArch64][CostModel] Add SVE bfloat arithmetic tests (NFC) (#166951)

This patch adds cost model tests for `bfloat` operations with
`+sve-b16b16`. Currently, some of these costs are higher than they
should be as the cost model is assuming `bfloat`s need promotion, but
some of these operations are natively supported with `+sve-b16b16`.
DeltaFile
+129-1llvm/test/Analysis/CostModel/AArch64/sve-arith-fp.ll
+129-11 files

LLVM/project fdd52f5llvm/lib/Transforms/Vectorize VPlanRecipes.cpp VPlan.h, llvm/test/Transforms/LoopVectorize widen-gep-all-indices-invariant.ll

[VPlan] Handle WidenGEP in narrowToSingleScalars (#166740)

This allows us to strip a special case in VPWidenGEP::execute.
DeltaFile
+23-42llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
+7-7llvm/test/Transforms/LoopVectorize/RISCV/gather-scatter-cost.ll
+6-6llvm/test/Transforms/LoopVectorize/widen-gep-all-indices-invariant.ll
+0-6llvm/lib/Transforms/Vectorize/VPlan.h
+2-1llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+38-625 files

LLVM/project c3c4a88clang/test/AST/ByteCode c.c

[clang][bytecode] Add a C test case (#167484)

The original problem does not reproduce anymore, but add the test case.

Fixes https://github.com/llvm/llvm-project/issues/163563
DeltaFile
+5-0clang/test/AST/ByteCode/c.c
+5-01 files

LLVM/project 53d51c9bolt/lib/Passes PointerAuthCFIAnalyzer.cpp

[BOLT] PointerAuthCFIAnalyzer: return early if there is no work

- makes sure we do not divide by zero, to calculate the % of ignored
  functions.
DeltaFile
+3-0bolt/lib/Passes/PointerAuthCFIAnalyzer.cpp
+3-01 files

LLVM/project 0400b9amlir/lib/Dialect/MemRef/Utils MemRefUtils.cpp, mlir/test/Dialect/MemRef transform-ops.mlir

[mlir]: Add handling of escaped memrefs to erase_dead_alloc_and_stores (#167255)

Patch updates transform.memref.erase_dead_alloc_and_stores to not delete
escaped allocations.
DeltaFile
+17-0mlir/test/Dialect/MemRef/transform-ops.mlir
+3-0mlir/lib/Dialect/MemRef/Utils/MemRefUtils.cpp
+20-02 files

LLVM/project 4719bf6bolt/lib/Passes PointerAuthCFIAnalyzer.cpp

[BOLT] Add comment about the chosen threshold
DeltaFile
+10-0bolt/lib/Passes/PointerAuthCFIAnalyzer.cpp
+10-01 files

LLVM/project dacd2f9libcxx/src exception.cpp, libcxx/src/support/runtime exception_pointer_cxxabi.ipp exception_libcxxabi.ipp

[libc++][NFC] Make the exception implementation files self-contained (#164377)

DeltaFile
+9-10libcxx/src/support/runtime/exception_pointer_cxxabi.ipp
+2-10libcxx/src/exception.cpp
+6-2libcxx/src/support/runtime/exception_libcxxabi.ipp
+3-0libcxx/src/support/runtime/exception_glibcxx.ipp
+2-0libcxx/src/support/runtime/exception_msvc.ipp
+2-0libcxx/src/support/runtime/exception_fallback.ipp
+24-224 files not shown
+30-2210 files

LLVM/project c0bca9clibcxx/include any future, libcxx/include/__memory temp_value.h

[libc++] Remove some of the uses of aligned_storage inside the library (#161635)

`aligned_storage` has been deprecated and will most likely be removed in
a future version of C++. This patch removes some of its uses to avoid
having to work around its removal in the future.
DeltaFile
+4-6libcxx/include/any
+1-4libcxx/include/future
+1-2libcxx/include/__memory/temp_value.h
+6-123 files

LLVM/project 5cb2c68libunwind/src UnwindRegistersSave.S Registers.hpp, libunwind/test aarch64_za_unwind.pass.cpp

[libunwind][AArch64] Disable ZA before resuming from unwinding (on Linux) (#165451)

This patch reimplements the SME ABI `__arm_za_disable` routine within
libunwind. This routine must be called before resuming from unwinding on
AArch64 platforms with SME support.

Before calling the routine, we need to check that SME is available. In
this patch, this is implemented for Linux-based platforms by checking
HWCAP2. It should be possible to implement this check for other
platforms as required.

This patch includes a test for this functionality. This test requires
SME, so on platforms without it, it will simply pass.
DeltaFile
+117-0libunwind/test/aarch64_za_unwind.pass.cpp
+62-0libunwind/src/UnwindRegistersSave.S
+38-15libunwind/src/Registers.hpp
+217-153 files

LLVM/project 517d725llvm/lib/Transforms/Vectorize VPlanRecipes.cpp LoopVectorize.cpp, llvm/test/Transforms/LoopVectorize/AArch64 partial-reduce-dot-product-neon.ll partial-reduce-dot-product-epilogue.ll

[LV] Move condition to VPPartialReductionRecipe::execute (#166136)

This means that VPExpressions will now be constructed for
VPPartialReductionRecipe's when the loop has tail-folding predication.

Note that control-flow (if/else) predication is not yet handled
for partial reductions, because of the way partial reductions
are recognised and built up.
DeltaFile
+243-483llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
+81-161llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
+71-0llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
+27-11llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
+1-8llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+1-1llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
+424-6646 files

LLVM/project 8e3188aclang/lib/AST/ByteCode Compiler.h Compiler.cpp, clang/test/AST/ByteCode cxx14.cpp

[clang][bytecode] Mark CXXDefaultInitExprs in InitLink chain (#166395)

So we know before _what_ entry in the chain we need to look for the
InitList.

Fixes https://github.com/llvm/llvm-project/issues/166171
DeltaFile
+21-0clang/test/AST/ByteCode/cxx14.cpp
+13-4clang/lib/AST/ByteCode/Compiler.h
+6-5clang/lib/AST/ByteCode/Compiler.cpp
+40-93 files

LLVM/project eaf3a91llvm/lib/Transforms/Scalar IndVarSimplify.cpp, llvm/test/Transforms/IndVarSimplify floating-point-iv.ll

[IndVarSimplify] Ensure fp values can be represented as exact integers

When transforming floating-point induction variables into integer ones,
make sure we stay within the bounds of fp values that can be represented
as integers without gaps, i.e., 2^24 and 2^53 for IEEE-754 single and
double precision respectively (both on negative and positive side).

Fixes: https://github.com/llvm/llvm-project/issues/166496.
DeltaFile
+12-13llvm/test/Transforms/IndVarSimplify/floating-point-iv.ll
+16-2llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
+28-152 files

LLVM/project 9100001llvm/test/Transforms/IndVarSimplify floating-point-iv.ll

[IndVarSimplify] Precommit tests for PR166649 (NFC)
DeltaFile
+138-0llvm/test/Transforms/IndVarSimplify/floating-point-iv.ll
+138-01 files

LLVM/project 658b5e3llvm/lib/Analysis ModuleDebugInfoPrinter.cpp, llvm/test/DebugInfo/Generic debuginfofinder-cu-source-language-names.ll

[llvm][DebugInfo] Adjust ModuleDebugInfoPrinter to versioned language names (#167293)

We shouldn't be calling `getUnversionedName` unconditionally because
DWARFv6-enabled Clang will emit versioned language names that are
versioned (i.e., `sourceLanguageName`...see new test case). We need to
check `hasVersionedName` and pick the appropriate API based on that.
Otherwise we assert in `getUnversionedName`.
DeltaFile
+22-0llvm/test/DebugInfo/Generic/debuginfofinder-cu-source-language-names.ll
+12-6llvm/lib/Analysis/ModuleDebugInfoPrinter.cpp
+34-62 files

LLVM/project dfdc69bllvm/lib/Target/RISCV RISCVISelLowering.cpp RISCVInstrInfoP.td, llvm/lib/Target/RISCV/MCTargetDesc RISCVMatInt.cpp

[RISCV][llvm] Preliminary P extension codegen support (#162668)

This is the initial support of P extension codegen, it only includes
small part of instructions:
PADD_H, PADD_B,
PSADD_H, PSADD_B,
PAADD_H, PAADD_B,
PSADDU_H, PSADDU_B,
PAADDU_H, PAADDU_B,
PSUB_H, PSUB_B,
PDIF_H, PDIF_B,
PSSUB_H, PSSUB_B,
PASUB_H, PASUB_B,
PDIFU_H, PDIFU_B,
PSSUBU_H, PSSUBU_B,
PASUBU_H, PASUBU_B
DeltaFile
+515-0llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
+514-0llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
+218-0llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+89-6llvm/lib/Target/RISCV/RISCVInstrInfoP.td
+35-0llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
+29-0llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.cpp
+1,400-67 files not shown
+1,451-813 files

LLVM/project 531ce54llvm/lib/Target/Hexagon HexagonBitSimplify.cpp

[Hexagon] Fix a warning

This patch fixes:

  llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp:1799:32: error:
  private field 'HRI' is not used [-Werror,-Wunused-private-field]
DeltaFile
+1-1llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
+1-11 files

LLVM/project db8c38dmlir/include/mlir/Dialect/LLVMIR NVVMOps.td, mlir/test/Target/LLVMIR nvvmir-invalid.mlir nvvmir.mlir

[NVVM] Make nanosleep op duration SSA value (#167331)

DeltaFile
+0-8mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
+2-4mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
+3-3mlir/test/Target/LLVMIR/nvvmir.mlir
+5-153 files

LLVM/project 0acbf74mlir/lib/Bindings/Python IRCore.cpp NanobindUtils.h, mlir/test/python/ir operation.py

[MLIR][Python] fix PyRegionList __iter__
DeltaFile
+26-2mlir/test/python/ir/operation.py
+4-4mlir/lib/Bindings/Python/IRCore.cpp
+0-1mlir/lib/Bindings/Python/NanobindUtils.h
+30-73 files

LLVM/project 8a0e2e6mlir/lib/Bindings/Python IRCore.cpp NanobindUtils.h, mlir/test/python/ir operation.py

[MLIR][Python] fix PyRegionList __iter__
DeltaFile
+26-1mlir/test/python/ir/operation.py
+4-4mlir/lib/Bindings/Python/IRCore.cpp
+0-1mlir/lib/Bindings/Python/NanobindUtils.h
+30-63 files

LLVM/project 20c44e3mlir/include/mlir-c/Dialect PtrDialect.h, mlir/lib/Bindings/Python DialectPtr.cpp

[MLIR][Python] enable ptr dialect bindings
DeltaFile
+35-10mlir/python/CMakeLists.txt
+41-0mlir/include/mlir-c/Dialect/PtrDialect.h
+41-0mlir/lib/Bindings/Python/DialectPtr.cpp
+39-0mlir/lib/CAPI/Dialect/PtrDialect.cpp
+23-0mlir/test/python/dialects/ptr.py
+14-0mlir/python/mlir/dialects/PtrOps.td
+193-102 files not shown
+208-108 files

LLVM/project 321afc7llvm/lib/Target/VE/AsmParser VEAsmParser.cpp

[VE] Use MCRegister instead of unsigned. NFC (#167460)

DeltaFile
+39-37llvm/lib/Target/VE/AsmParser/VEAsmParser.cpp
+39-371 files

LLVM/project 4d88d37llvm/include/llvm/CodeGen TargetInstrInfo.h, llvm/lib/CodeGen BranchFolding.cpp

Reland "[LoongArch] Add `isSafeToMove` hook to prevent unsafe instruction motion"

This patch introduces a new virtual method
`TargetInstrInfo::isSafeToMove()` to allow backends to control whether a
machine instruction can be safely moved by optimization passes.

The `BranchFolder` pass now respects this hook when hoisting common
code. By default, all instructions are considered safe to to move.

For LoongArch, `isSafeToMove()` is overridden to prevent
relocation-related instruction sequences (e.g. PC-relative addressing
and calls) from being broken by instruction motion. Correspondingly,
`isSchedulingBoundary()` is updated to reuse this logic for consistency.
DeltaFile
+27-18llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
+11-0llvm/include/llvm/CodeGen/TargetInstrInfo.h
+5-0llvm/lib/CodeGen/BranchFolding.cpp
+3-0llvm/lib/Target/LoongArch/LoongArchInstrInfo.h
+46-184 files

LLVM/project cc184e3llvm/lib/Target/Sparc/AsmParser SparcAsmParser.cpp

[Sparc] Use MCRegister instead of unsigned. NFC (#167464)

DeltaFile
+26-22llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
+26-221 files

LLVM/project 464cb33llvm/include/llvm/CodeGen TargetInstrInfo.h, llvm/lib/CodeGen BranchFolding.cpp

Revert "[LoongArch] Add `isSafeToMove` hook to prevent unsafe instruction motion" (#167463)

Reverts llvm/llvm-project#163725
DeltaFile
+18-27llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
+0-11llvm/include/llvm/CodeGen/TargetInstrInfo.h
+0-5llvm/lib/CodeGen/BranchFolding.cpp
+0-3llvm/lib/Target/LoongArch/LoongArchInstrInfo.h
+18-464 files

LLVM/project 4c4b1a9orc-rt/include/orc-rt WrapperFunction.h SimpleNativeMemoryMap.h, orc-rt/include/orc-rt-c WrapperFunction.h

[orc-rt] Replace wrapper fn `void *CallCtx` arg with `uint64_t CallId`. (#167452)

This argument serves as an opaque id (outside the ControllerAccess
object) for a call to a wrapper function. I expect that most
ControllerAccess implementations will want to use this argument as a
sequence number (plain integer), for which uint64_t will be a better fit
than void*. For ControllerAccess implementations that want to use a
pointer, uint64_t should be sufficiently large.
DeltaFile
+23-20orc-rt/unittests/SPSWrapperFunctionTest.cpp
+14-14orc-rt/include/orc-rt/WrapperFunction.h
+8-8orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
+4-4orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
+5-3orc-rt/unittests/DirectCaller.h
+4-3orc-rt/include/orc-rt-c/WrapperFunction.h
+58-521 files not shown
+60-547 files

LLVM/project 19b8ba5llvm/include/llvm/CodeGen TargetInstrInfo.h, llvm/lib/CodeGen BranchFolding.cpp

Revert "[LoongArch] Add `isSafeToMove` hook to prevent unsafe instruction mot…"

This reverts commit cdc3cb20543bcb574f08ab23bffe0699f7a9cdc8.
DeltaFile
+18-27llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
+0-11llvm/include/llvm/CodeGen/TargetInstrInfo.h
+0-5llvm/lib/CodeGen/BranchFolding.cpp
+0-3llvm/lib/Target/LoongArch/LoongArchInstrInfo.h
+18-464 files

LLVM/project f2aad35llvm/lib/Target/XCore/Disassembler XCoreDisassembler.cpp

[XCore] Use MCRegister instead of unsigned. NFC (#167461)

DeltaFile
+3-3llvm/lib/Target/XCore/Disassembler/XCoreDisassembler.cpp
+3-31 files

LLVM/project 957f929clang/docs ReleaseNotes.rst, clang/lib/Basic/Targets RISCV.h

[RISCV] Set __GCC_CONSTRUCTIVE_SIZE/__GCC_DESTRUCTIVE_SIZE to 64 (#162986)

These two macros were added in
https://github.com/llvm/llvm-project/pull/89446.

But the previous values may not be reasonable for RV64 systems because
most
of them have a cache line size 64B. So here we change them to 64.
DeltaFile
+10-0clang/test/Preprocessor/init-riscv.c
+3-0clang/docs/ReleaseNotes.rst
+1-1clang/lib/Basic/Targets/RISCV.h
+14-13 files

LLVM/project 1b4f226clang-tools-extra/clang-tidy/bugprone UncheckedOptionalAccessCheck.h, clang-tools-extra/docs ReleaseNotes.rst

[clang-tidy] Add `IgnoreValueCalls` option to bugprone-unchecked-optional-access (#167209)

Add a new option `IgnoreValueCalls` to
`bugprone-unchecked-optional-access`

Closes [#163831](https://github.com/llvm/llvm-project/issues/163831)
DeltaFile
+25-17clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
+25-0clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-optional-access-ignore-value.cpp
+19-0clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-optional-access.rst
+5-1clang-tools-extra/docs/ReleaseNotes.rst
+3-1clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.h
+3-0clang/include/clang/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.h
+80-196 files