LLVM/project 397181dlldb/include/lldb/Core ModuleList.h, lldb/source/Core ModuleList.cpp

[lldb] Fix use after free on ModuleList::RemoveSharedModuleIfOrphaned (#155331)

This fixes a potential use after free where
ModuleList::RemoveSharedModuleIfOrphaned ->
SharedModuleList::RemoveIfOrphaned -> SharedModuleList::RemoveFromMap
would potentially dereference a freed pointer. This fixes it by not
calling ModuleList::RemoveSharedModuleIfOrphaned at all if the pointer
was just freed.
DeltaFile
+34-25lldb/source/Core/ModuleList.cpp
+5-2lldb/include/lldb/Core/ModuleList.h
+2-2lldb/source/Target/Target.cpp
+41-293 files

LLVM/project 4e6ee0bmlir/lib/Transforms GenerateRuntimeVerification.cpp, mlir/test/Integration/Dialect/MemRef subview-runtime-verification.mlir cast-runtime-verification.mlir

[MLIR] Fix test failures for generate-runtime-verification pass from PR #160331 (#162533)

[MLIR] Fix test failures for generate-runtime-verification pass from PR #160331
    
PR #160331 introduced a mistake that removed the error message for
generate-runtime-verification
pass, leading to test failures during
`test-build-check-mlir-build-only-check-mlir`.
    
This patch restores the missing error message.
    
In addition, for related tests, the op strings used in FileChecks are
updated with the same op
formats as used in input mlirs.
    
Verified locally.
    
Fixes post-merge regression from:
https://github.com/llvm/llvm-project/pull/160331
DeltaFile
+8-8mlir/test/Integration/Dialect/Tensor/extract_slice-runtime-verification.mlir
+8-8mlir/test/Integration/Dialect/MemRef/subview-runtime-verification.mlir
+4-4mlir/test/Integration/Dialect/MemRef/cast-runtime-verification.mlir
+4-2mlir/lib/Transforms/GenerateRuntimeVerification.cpp
+3-3mlir/test/Integration/Dialect/MemRef/load-runtime-verification.mlir
+3-3mlir/test/Integration/Dialect/Tensor/extract-runtime-verification.mlir
+30-288 files not shown
+41-3714 files

LLVM/project 61363aaclang/test/Sema/AArch64 arm_sve_feature_dependent_sve___sme.c arm_sve_feature_dependent_sve_AND_sve2___sme.c, llvm/test/CodeGen/AMDGPU select-fabs-fneg-extract.v2f16.ll

rebase

Created using spr 1.3.6
DeltaFile
+19,470-0clang/test/Sema/AArch64/arm_sve_feature_dependent_sve___sme.c
+16,470-0clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2___sme.c
+5,881-0clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve.c
+2,203-2,203llvm/test/MC/AMDGPU/gfx90a_ldst_acc.s
+4,034-0clang/test/Sema/AArch64/arm_sve_streaming_only_sme_AND_sme2.c
+1,348-2,612llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
+49,406-4,815522 files not shown
+88,847-10,625528 files

LLVM/project 2286accclang/test/Sema/AArch64 arm_sve_feature_dependent_sve___sme.c arm_sve_feature_dependent_sve_AND_sve2___sme.c, llvm/test/CodeGen/AMDGPU select-fabs-fneg-extract.v2f16.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.6

[skip ci]
DeltaFile
+19,470-0clang/test/Sema/AArch64/arm_sve_feature_dependent_sve___sme.c
+16,470-0clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2___sme.c
+5,881-0clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve.c
+2,203-2,203llvm/test/MC/AMDGPU/gfx90a_ldst_acc.s
+4,034-0clang/test/Sema/AArch64/arm_sve_streaming_only_sme_AND_sme2.c
+1,348-2,612llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
+49,406-4,815522 files not shown
+88,847-10,625528 files

LLVM/project a2723ddllvm/include/llvm/Support SpecialCaseList.h, llvm/lib/Support SpecialCaseList.cpp

[NFC][SpecialCaseList] Split Matcher into RegexMatcher and GlobMatcher (#162303)

Glob will be optimized
Regex we we will keep intact.

Using std::variant to avoid virtual methods,
and allow to switch unique_ptr to move in future.
DeltaFile
+67-42llvm/lib/Support/SpecialCaseList.cpp
+48-24llvm/include/llvm/Support/SpecialCaseList.h
+115-662 files

LLVM/project 5ebb052llvm/test/CodeGen/AArch64/GlobalISel legalizer-info-validation.mir, llvm/test/CodeGen/RISCV/GlobalISel legalizer-info-validation.mir

Generalize codegen tests to not hardcode G_MIR opcodes (#162554)

(trivial change, no review expected)
DeltaFile
+3-3llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
+3-3llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
+6-62 files

LLVM/project 72ebda2libc/startup/gpu/amdgpu start.cpp, libc/startup/gpu/nvptx start.cpp

[libc] Ensure the RPC server is alwaus used

Summary:
Previous change made us no longer link `exit` by default which implied
the RPC server. This is a required symbol for the loader. This will be
fixed later when I port the loader to LLVMOffload. For now just work
around it to fix the bots.
DeltaFile
+3-0libc/startup/gpu/nvptx/start.cpp
+3-0libc/startup/gpu/amdgpu/start.cpp
+6-02 files

LLVM/project 4f136a0bolt/include/bolt/Profile YAMLProfileReader.h ProfileYAMLMapping.h, bolt/lib/Passes BinaryPasses.cpp

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

Created using spr 1.3.4

[skip ci]
DeltaFile
+271-15bolt/lib/Profile/YAMLProfileReader.cpp
+18-8bolt/lib/Profile/YAMLProfileWriter.cpp
+0-17bolt/lib/Passes/BinaryPasses.cpp
+12-0llvm/include/llvm/ADT/CoalescingBitVector.h
+9-1bolt/include/bolt/Profile/YAMLProfileReader.h
+6-0bolt/include/bolt/Profile/ProfileYAMLMapping.h
+316-412 files not shown
+317-478 files

LLVM/project 3c87e5bbolt/include/bolt/Profile YAMLProfileReader.h, bolt/lib/Passes BinaryPasses.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.4
DeltaFile
+271-15bolt/lib/Profile/YAMLProfileReader.cpp
+18-8bolt/lib/Profile/YAMLProfileWriter.cpp
+0-17bolt/lib/Passes/BinaryPasses.cpp
+12-0llvm/include/llvm/ADT/CoalescingBitVector.h
+9-1bolt/include/bolt/Profile/YAMLProfileReader.h
+4-4llvm/lib/MC/MCPseudoProbe.cpp
+314-454 files not shown
+325-5310 files

LLVM/project c365856llvm/unittests/Analysis IR2VecTest.cpp

Removed commented code
DeltaFile
+0-10llvm/unittests/Analysis/IR2VecTest.cpp
+0-101 files

LLVM/project f1eb7e5.github/workflows build-ci-container-tooling.yml

[Github] Rename Build CI Tooling Containers Workflow

This was copied and pasted from the main CI container build workflows
and I missed this during code review.
DeltaFile
+1-1.github/workflows/build-ci-container-tooling.yml
+1-11 files

LLVM/project ea8f7dfllvm/unittests/Analysis IR2VecTest.cpp

Removed commented code
DeltaFile
+0-76llvm/unittests/Analysis/IR2VecTest.cpp
+0-761 files

LLVM/project 4d2d213clang/utils/analyzer Dockerfile, libc/utils/buildbot Dockerfile

[NFC][CI] Use Fully Qualified Names for All Containers

Fix the rest of the containers sitting around in the monorepo.
DeltaFile
+2-2llvm/utils/docker/example/Dockerfile
+2-2llvm/utils/docker/nvidia-cuda/Dockerfile
+1-1clang/utils/analyzer/Dockerfile
+1-1libc/utils/buildbot/Dockerfile
+1-1polly/lib/External/isl/imath/tests/linux/Dockerfile
+7-75 files

LLVM/project d82d509llvm/docs MLGO.rst, llvm/include/llvm/Analysis IR2Vec.h

Restrict caching
DeltaFile
+78-92llvm/lib/Analysis/IR2Vec.cpp
+65-63llvm/unittests/Analysis/IR2VecTest.cpp
+26-25llvm/include/llvm/Analysis/IR2Vec.h
+4-12llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp
+1-9llvm/test/Analysis/IR2Vec/unreachable.ll
+1-1llvm/docs/MLGO.rst
+175-2026 files

LLVM/project 496d071libcxx/utils/ci docker-compose.yml Dockerfile, libcxx/utils/ci/vendor/android Dockerfile.emulator

[libc++][CI] Use fully qualified names in docker images (NFC) (#162156)

Based on
https://github.com/llvm/llvm-project/pull/162007#issuecomment-3373161948,
we should avoid having short links in docker images.
DeltaFile
+2-2libcxx/utils/ci/docker-compose.yml
+1-1libcxx/utils/ci/vendor/android/Dockerfile.emulator
+1-1libcxx/utils/ci/Dockerfile
+4-43 files

LLVM/project 578314ebolt/utils/docker Dockerfile

[Bolt] Use fully qualified docker image name (NFC) (#162154)

Based on
https://github.com/llvm/llvm-project/pull/162007#issuecomment-3373161948,
we should avoid having short links in docker images.
DeltaFile
+2-2bolt/utils/docker/Dockerfile
+2-21 files

LLVM/project 98bb91d.github new-prs-labeler.yml, clang/include/clang/Analysis/Analyses/LifetimeSafety LifetimeSafety.h Facts.h

Apply changes from code browser

Apply changes from code browser
DeltaFile
+9-28clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
+10-5clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
+5-3clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
+2-2.github/new-prs-labeler.yml
+26-384 files

LLVM/project f802acfllvm/lib/Target/SPIRV SPIRVBuiltins.cpp SPIRVModuleAnalysis.cpp, llvm/lib/Target/SPIRV/MCTargetDesc SPIRVInstPrinter.cpp

[SPIR-V] Add SPV_INTEL_predicated_io extension (#161591)

This PR introduces the support for the SPIR-V extension
`SPV_INTEL_predicated_io`. This extension adds predicated load and store
instructions. Predicated load performs load from memory if predicate is
true; otherwise, it uses default_value as a result. Predicated store
performs store of value to memory if predicate is true; otherwise, it
does nothing.

Reference Specification:

https://github.com/intel/llvm/blob/sycl/sycl/doc/design/spirv-extensions/SPV_INTEL_predicated_io.asciidoc
DeltaFile
+36-0llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_predicated_io/predicated_io_generic.ll
+23-0llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
+11-0llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
+11-0llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
+6-0llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
+5-0llvm/lib/Target/SPIRV/SPIRVBuiltins.td
+92-03 files not shown
+99-19 files

LLVM/project 86ad98cclang/lib/Driver/ToolChains/Arch RISCV.cpp

[clang][Driver][RISCV] Rename `getRISCFeaturesFromMcpu`. NFCI (#162545)

This function, which has a typo in the name btw, is no longer doing what
it was created to do: instead of deducting non-extension target features
from `-mcpu` -- a task that was (more or less) subsumed by
`riscv::getRISCVTargetFeatures` -- it is only checking if the `-mcpu`
value is valid or not now. Therefore, this patch renames it into
`isValidRISCVCPU` and exits early if it's not.

NFCI.
DeltaFile
+6-6clang/lib/Driver/ToolChains/Arch/RISCV.cpp
+6-61 files

LLVM/project cc14b58mlir/lib/Dialect/Linalg/Transforms WinogradConv2D.cpp, mlir/test/Dialect/Linalg winograd-conv2d-rewrite.mlir

[MLIR][Linalg] Fix winograd op lowering for types smaller than f32 (#158500)

The winograd transform constant array is always emitted as f32, but
previously the creation would pass through the original type. If this
type was smaller (like f16), you would get an assertion failure during
attribute creation.

This fixes this by ensuring that the types match and adding a test for
this case.
DeltaFile
+116-0mlir/test/Dialect/Linalg/winograd-conv2d-rewrite.mlir
+16-12mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
+132-122 files

LLVM/project 1395d43lldb/unittests/Breakpoint CMakeLists.txt

[lldb] Remove unnecessary LINK_LIBS in LLDBBreakpointTests (NFC)
DeltaFile
+10-14lldb/unittests/Breakpoint/CMakeLists.txt
+10-141 files

LLVM/project 37af81fclang/lib/Sema SemaTemplate.cpp

[Clang][Sema] Add a nullptr check in template name (#162377)

Static analysis flagged that when calling ActOnTemplateName, `S` can be
a `nullptr`
and we call `isTemplateName` which unconditionally dereferences the `S`
argument at
some point. I added a `nullptr` check to assure we don't dereference `S`
in
`isTemplateName` if it is a `nullptr`.
DeltaFile
+1-1clang/lib/Sema/SemaTemplate.cpp
+1-11 files

LLVM/project aa79293clang/test/Sema/AArch64 arm_sve_feature_dependent_sve___sme.c arm_sve_feature_dependent_sve_AND_sve2___sme.c, llvm/test/CodeGen/AMDGPU select-fabs-fneg-extract.v2f16.ll

rebase

Created using spr 1.3.6
DeltaFile
+19,470-0clang/test/Sema/AArch64/arm_sve_feature_dependent_sve___sme.c
+16,470-0clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2___sme.c
+5,881-0clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve.c
+2,203-2,203llvm/test/MC/AMDGPU/gfx90a_ldst_acc.s
+4,034-0clang/test/Sema/AArch64/arm_sve_streaming_only_sme_AND_sme2.c
+1,348-2,612llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
+49,406-4,815497 files not shown
+88,578-10,576503 files

LLVM/project 0ca23a3flang/lib/Optimizer/CodeGen CodeGen.cpp

[Flang]Fix the build with the EXPENSIVE_CHECKS enabled (#162541)

DeltaFile
+1-1flang/lib/Optimizer/CodeGen/CodeGen.cpp
+1-11 files

LLVM/project ab2c145llvm/include/llvm/Support TrailingObjects.h

[llvm][NFC] A couple cleanups in `TrailingObjects` (#162521)

1. `verifyTrailingObjectsAlignment` is unused.
2. To spell out the name of a templated base class, we don't need to
repeat all of its template arguments.
DeltaFile
+1-6llvm/include/llvm/Support/TrailingObjects.h
+1-61 files

LLVM/project 857961dclang/lib/Basic ProfileList.cpp Diagnostic.cpp, llvm/include/llvm/Support SpecialCaseList.h

[NFC][SpecialCaseList] Hide more details in private section (#162302)

DeltaFile
+6-0llvm/include/llvm/Support/SpecialCaseList.h
+2-2clang/lib/Basic/ProfileList.cpp
+1-1clang/lib/Basic/Diagnostic.cpp
+1-1clang/lib/Basic/SanitizerSpecialCaseList.cpp
+10-44 files

LLVM/project 46d71e8lldb/source/API SBBreakpoint.cpp SBBreakpointLocation.cpp, lldb/unittests/API SBBreakpointClearConditionTest.cpp CMakeLists.txt

Revert "Make SBBreakpoint/SBBreakpointLocation.SetCondition(nullptr) work aga…"

This reverts commit f3e2c20a23b11fbe1149e5d2e3631109af6d3238.
DeltaFile
+0-69lldb/unittests/API/SBBreakpointClearConditionTest.cpp
+2-9lldb/source/API/SBBreakpoint.cpp
+2-9lldb/source/API/SBBreakpointLocation.cpp
+1-5lldb/unittests/Breakpoint/CMakeLists.txt
+0-1lldb/unittests/API/CMakeLists.txt
+5-935 files

LLVM/project 3a3b214llvm/lib/Frontend/HLSL RootSignatureMetadata.cpp RootSignatureValidations.cpp, llvm/test/CodeGen/DirectX/ContainerData RootSignature-StaticSamplers-Invalid-Flag_V1.ll RootSignature-RootDescriptor-Invalid-Flags_V1.ll

[DirectX] Making sure we always parse, validate and verify Flags (#162171)

This PR makes a few changes to make sure that Root Signature Flags are
always parsed validated and verified, this includes if you use a version
that doesn't support flags. The logic already existed, this PR just
makes sure it is always executed.

Closes: [#161579](https://github.com/llvm/llvm-project/issues/161579)

---------

Co-authored-by: joaosaffran <joao.saffran at microsoft.com>
DeltaFile
+9-23llvm/lib/Frontend/HLSL/RootSignatureMetadata.cpp
+19-0llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-Flag_V1.ll
+18-0llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-Flags_V1.ll
+0-4llvm/lib/Frontend/HLSL/RootSignatureValidations.cpp
+46-274 files

LLVM/project f31d078clang/include/clang/Analysis/Analyses/LifetimeSafety Facts.h

Apply changes from code browser

Apply changes from code browser
DeltaFile
+3-3clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
+3-31 files

LLVM/project 5d811c2clang/include/clang/Analysis/Analyses/LifetimeSafety Checker.h

Apply changes from code browser

Apply changes from code browser
DeltaFile
+6-1clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
+6-11 files