LLVM/project ea966c2clang/test/Analysis cxx-uninitialized-object.cpp

Update cxx-uninitialized-object.cpp
DeltaFile
+16-4clang/test/Analysis/cxx-uninitialized-object.cpp
+16-41 files

LLVM/project 96ae413llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3 KaleidoscopeJIT.h, llvm/examples/Kaleidoscope/BuildingAJIT/Chapter4 KaleidoscopeJIT.h

[ORC] Fix examples after 6dbf9d1ac5e (forward declaration of MemoryAc… (#191834)

…cess).

6dbf9d1ac5e forward declared the MemoryAccess class in
ExecutorProcessControl.h, breaking some examples that were depending on
the transitive include. (See e.g.
https://lab.llvm.org/buildbot/#/builders/80/builds/21875).

This commit adds the missing #includes to the broken examples.
DeltaFile
+1-0llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/KaleidoscopeJIT.h
+1-0llvm/examples/Kaleidoscope/BuildingAJIT/Chapter4/KaleidoscopeJIT.h
+1-0llvm/examples/OrcV2Examples/LLJITWithExecutorProcessControl/LLJITWithExecutorProcessControl.cpp
+3-03 files

LLVM/project fc10470clang/test/Sema warn-lifetime-safety-suggestions.cpp warn-lifetime-safety.cpp

fix suggestions test
DeltaFile
+5-4clang/test/Sema/warn-lifetime-safety-suggestions.cpp
+0-4clang/test/Sema/warn-lifetime-safety.cpp
+5-82 files

LLVM/project e73a883clang/test/Sema warn-lifetime-safety-suggestions.cpp

lifetime suggestion
DeltaFile
+21-0clang/test/Sema/warn-lifetime-safety-suggestions.cpp
+21-01 files

LLVM/project 6f5985bclang/test/Sema warn-lifetime-safety-dangling-field.cpp warn-lifetime-safety.cpp

dangling field
DeltaFile
+16-0clang/test/Sema/warn-lifetime-safety-dangling-field.cpp
+2-0clang/test/Sema/warn-lifetime-safety.cpp
+18-02 files

LLVM/project ef9526e. a.o

remove a.o
DeltaFile
+0-0a.o
+0-01 files

LLVM/project f367ab5clang/lib/Analysis/LifetimeSafety FactsGenerator.cpp, clang/lib/Sema SemaAttr.cpp SemaTemplateInstantiateDecl.cpp

Make Unique inference
DeltaFile
+67-3clang/test/Sema/warn-lifetime-safety.cpp
+55-0clang/lib/Sema/SemaAttr.cpp
+11-0clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
+3-0clang/test/Sema/Inputs/lifetime-analysis.h
+2-1clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
+2-0clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
+140-42 files not shown
+141-48 files

LLVM/project 20cb9dc. a.o, clang/test/Sema warn-lifetime-safety.cpp

string_view and pointer parameters
DeltaFile
+23-1clang/test/Sema/warn-lifetime-safety.cpp
+0-0a.o
+23-12 files

LLVM/project 78f51dfclang/test/Sema warn-lifetime-safety-suggestions.cpp

suggestions and inference
DeltaFile
+15-0clang/test/Sema/warn-lifetime-safety-suggestions.cpp
+15-01 files

LLVM/project 55c3e5dclang/test/Sema warn-lifetime-safety.cpp

remove comments
DeltaFile
+0-3clang/test/Sema/warn-lifetime-safety.cpp
+0-31 files

LLVM/project d3b9e2bclang/lib/Analysis/LifetimeSafety Origins.cpp, clang/test/Sema warn-lifetime-safety.cpp warn-lifetime-safety-dangling-field.cpp

[LifetimeSafety] Detect dangling field of base class
DeltaFile
+18-0clang/test/Sema/warn-lifetime-safety.cpp
+12-0clang/test/Sema/warn-lifetime-safety-dangling-field.cpp
+1-1clang/lib/Analysis/LifetimeSafety/Origins.cpp
+31-13 files

LLVM/project 386e67dclang/include/clang/Analysis/Analyses/LifetimeSafety LifetimeSafety.h, clang/lib/Analysis/LifetimeSafety Checker.cpp

[LifetimeSafety] Suggest/infer annotation in constructors (#191699)

This change improves the lifetime safety checker to detect when
constructor parameters escape to class fields and suggest appropriate
`[[clang::lifetimebound]]` annotations.

```cpp
struct A {
  View v;
  A(const MyObj& obj) : v(obj) {} // Now suggests [[clang::lifetimebound]]
};
```
DeltaFile
+58-0clang/test/Sema/warn-lifetime-safety-suggestions.cpp
+27-14clang/lib/Analysis/LifetimeSafety/Checker.cpp
+19-21clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
+10-4clang/lib/Sema/SemaLifetimeSafety.h
+6-6clang/test/Sema/warn-lifetime-safety.cpp
+6-2clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
+126-471 files not shown
+128-477 files

LLVM/project 9192300flang/include/flang/Semantics openmp-utils.h, flang/lib/Semantics openmp-utils.cpp

[flang][OpenMP] Implement GetGeneratedNestDepthWithReason (#191718)

For a loop-nest-generating construct this function returns the number of
loops in the generated loop nest.

A loop-nest-transformation construct can be thought of as replacing N
nested loops with K nested loops, where
  N = GetAffectedNestDepthWithReason
  K = GetGeneratedNestDepthWithReason
DeltaFile
+68-24flang/lib/Semantics/openmp-utils.cpp
+5-0flang/include/flang/Semantics/openmp-utils.h
+73-242 files

LLVM/project fefa5a8llvm/include/llvm/ExecutionEngine/Orc MachOPlatform.h, llvm/lib/ExecutionEngine/Orc MachOPlatform.cpp

[ORC] Add MachOPlatform::HeaderOptions customization callback. (#191819)

This change aims to make it easier for MachOPlatform clients to
customize JITDylib MachO headers.

At MachOPlatform construction time clients can now supply a
MachOPlatform::HeaderOptionsBuilder. The supplied callback will be
called by setupJITDylib to create the HeaderOptions for the JITDylib
being set up.

No testcase: Constructing a MachOPlatform instance requires the ORC
runtime, which we can't require for LLVM unit or regression suite tests.
We should look at testing this functionality in the new ORC runtime once
it's ready.
DeltaFile
+20-13llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
+11-1llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
+31-142 files

LLVM/project bc8c181llvm/test/CodeGen/RISCV/rvv vminu-vp.ll vmaxu-vp.ll

[RISCV] Remove codegen for vp_{u,s}{max,min} (#191640)

Part of the work to remove trivial VP intrinsics from the RISC-V
backend, see
https://discourse.llvm.org/t/rfc-remove-codegen-support-for-trivial-vp-intrinsics-in-the-risc-v-backend/87999

This splits off 4 intrinsics from #179622.
DeltaFile
+175-260llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
+175-260llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
+172-257llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
+172-257llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
+126-190llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll
+134-177llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll
+954-1,4015 files not shown
+1,227-1,79911 files

LLVM/project a68887dclang/test/Sema warn-lifetime-safety.cpp

remove comments
DeltaFile
+0-3clang/test/Sema/warn-lifetime-safety.cpp
+0-31 files

LLVM/project 91c0fdflibc/include pthread.yaml, libc/src/__support/threads mutex.h

[libc] add posix_mutex_trylock support (#191531)

Expose existing trylock internal operation to posix interface.
POSIX.1-2024 only specifies the `EBUSY` error case.

Assisted-by: Codex with gpt-5.4 default fast
DeltaFile
+26-0libc/src/pthread/pthread_mutex_trylock.cpp
+21-0libc/src/pthread/pthread_mutex_trylock.h
+16-0libc/test/integration/src/pthread/pthread_mutex_test.cpp
+11-0libc/src/pthread/CMakeLists.txt
+3-1libc/src/__support/threads/mutex.h
+4-0libc/include/pthread.yaml
+81-14 files not shown
+85-110 files

LLVM/project df11e43clang/lib/Analysis/LifetimeSafety Origins.cpp, clang/test/Sema warn-lifetime-safety.cpp warn-lifetime-safety-dangling-field.cpp

[LifetimeSafety] Detect dangling field of base class
DeltaFile
+18-0clang/test/Sema/warn-lifetime-safety.cpp
+12-0clang/test/Sema/warn-lifetime-safety-dangling-field.cpp
+1-1clang/lib/Analysis/LifetimeSafety/Origins.cpp
+31-13 files

LLVM/project 5fc2e06clang/include/clang/APINotes Types.h, clang/include/clang/AST TypeBase.h

Convert uses of std::optional<NullabilityKind> to SmallOptional
DeltaFile
+18-32clang/include/clang/APINotes/Types.h
+3-5clang/lib/Sema/SemaExprObjC.cpp
+4-4clang/lib/APINotes/APINotesTypes.cpp
+3-4clang/lib/AST/Type.cpp
+3-3clang/include/clang/AST/TypeBase.h
+2-2clang/lib/Sema/Sema.cpp
+33-505 files not shown
+40-5411 files

LLVM/project d34ebefclang/include/clang/AST Decl.h TemplateName.h, clang/include/clang/Basic SmallOptional.h UnsignedOrNone.h

[clang] NFC: Refactor UnsignedOrNone into SmallOptional<T>

Also adds support for enums.
DeltaFile
+79-0clang/include/clang/Basic/SmallOptional.h
+0-53clang/include/clang/Basic/UnsignedOrNone.h
+1-1clang/include/clang/AST/Decl.h
+1-1clang/include/clang/AST/TemplateName.h
+1-1clang/include/clang/Basic/Diagnostic.h
+1-1clang/include/clang/AST/ASTConcept.h
+83-576 files

LLVM/project 683f96ellvm/include/llvm/ADT GenericUniformityImpl.h, llvm/include/llvm/Analysis UniformityAnalysis.h

refactor: update variable names in uniformity analysis
DeltaFile
+35-35llvm/include/llvm/ADT/GenericUniformityImpl.h
+36-33llvm/lib/CodeGen/MachineUniformityAnalysis.cpp
+19-19llvm/lib/Analysis/UniformityAnalysis.cpp
+4-4llvm/include/llvm/Analysis/UniformityAnalysis.h
+4-3llvm/include/llvm/CodeGen/MachineUniformityAnalysis.h
+98-945 files

LLVM/project e6cbe70clang/test/Analysis cxx-uninitialized-object.cpp

Fix uninitialized field warnings in union tests
DeltaFile
+6-10clang/test/Analysis/cxx-uninitialized-object.cpp
+6-101 files

LLVM/project 52a250elldb/source/Plugins/TypeSystem/Clang TypeSystemClang.cpp, lldb/source/Symbol Variable.cpp

[NFC] Replace `expectedToStdOptional` with `expectedToOptional` (#191359)

Both implementations are currently equivalent. This is likely a leftover
from the past, when `llvm::Optional` existed.
DeltaFile
+2-9llvm/include/llvm/Support/Error.h
+2-2lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
+1-1lldb/source/Symbol/Variable.cpp
+1-1lldb/source/ValueObject/ValueObject.cpp
+1-1llvm/tools/llvm-readobj/ELFDumper.cpp
+7-145 files

LLVM/project 86e7900lldb/source/Host/common Socket.cpp, lldb/unittests/Host SocketTest.cpp

[lldb] Fix lldb-server host and port address parsing (#191414)

This patch fixes 2 problems in lldb-server argument parser:

1. Let's try to start lldb-server with incorrect arguments

```
./lldb-server platform --listen *:1111--server
```
Current behavior
 * lldb-server run in gdbserver mode with port 1111

Expected behavior
 * fail, as `1111–server` is not a number

2. And try to start lldb-server with host:port specification without
colon
```
./lldb-server gdbserver 1111 ./test 

    [29 lines not shown]
DeltaFile
+11-9lldb/source/Host/common/Socket.cpp
+9-6lldb/unittests/Host/SocketTest.cpp
+2-2lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationServerLLGSTest.cpp
+22-173 files

LLVM/project 6b9547fllvm/lib/Target/AMDGPU AMDGPUUnifyDivergentExitNodes.cpp AMDGPUUniformIntrinsicCombine.cpp, llvm/lib/Transforms/Scalar StructurizeCFG.cpp

update the affcted files which use uniformity and eraseFromParent
DeltaFile
+25-14llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
+16-13llvm/lib/Target/AMDGPU/AMDGPUUniformIntrinsicCombine.cpp
+16-9llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
+16-5llvm/lib/Transforms/Scalar/StructurizeCFG.cpp
+8-6llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
+7-3llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
+88-503 files not shown
+105-569 files

LLVM/project 2ae0411llvm/test/CodeGen/RISCV/rvv vfma-vp.ll vfmuladd-vp.ll

[RISCV] Expand vp.fma, fp.fmuladd, vp.fneg, vp.fpext (#190589)

Part of the work to remove trivial VP intrinsics from the RISC-V
backend, see
https://discourse.llvm.org/t/rfc-remove-codegen-support-for-trivial-vp-intrinsics-in-the-risc-v-backend/87999

This PR expands four intrinsics before codegen, but doesn't remove the
codegen handling yet as both DAGCombiner and type legalization can
create these nodes.

vp.fneg and vp.fpext are expanded in lockstep with the fma/fmuladd
intrinsics since some test cases for vfmacc etc. also use these
intrinsics, and mixing dynamic and constant vls causes some of the more
complex patterns to be missed.

The fixed-length VP vfmacc, vfmsac, vfnmacc and vfnmsac tests also need
to replace the EVL of the vp.merge/vp.select with an immediate otherwise
the resulting vmerge.vvm can't be folded into them. This only happens
for fixed vector intrinsics with no passthru, since we end up with a

    [5 lines not shown]
DeltaFile
+4,582-5,914llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
+928-1,030llvm/test/CodeGen/RISCV/rvv/vfmuladd-vp.ll
+194-277llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfma-vp.ll
+188-208llvm/test/CodeGen/RISCV/rvv/vfwnmacc-vp.ll
+192-192llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfnmsac-vp.ll
+179-204llvm/test/CodeGen/RISCV/rvv/vfneg-vp.ll
+6,263-7,82516 files not shown
+7,695-9,46522 files

LLVM/project e4900b0clang/test/OpenMP split_codegen.cpp, llvm/lib/CodeGen/GlobalISel GISelValueTracking.cpp

Merge branch 'users/kparzysz/r03-generated-depth' into users/kparzysz/r04-affected-do-loops
DeltaFile
+1,986-0clang/test/OpenMP/split_codegen.cpp
+875-148mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
+432-381llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
+301-373llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll
+310-363llvm/test/CodeGen/RISCV/rvv/vssubu-vp.ll
+309-364llvm/test/CodeGen/RISCV/rvv/vssub-vp.ll
+4,213-1,629523 files not shown
+18,027-10,653529 files

LLVM/project b8f3fbcllvm/include/llvm/ADT GenericUniformityImpl.h GenericSSAContext.h, llvm/lib/Analysis UniformityAnalysis.cpp

replace callbackVH with assertingVH
DeltaFile
+0-45llvm/lib/Analysis/UniformityAnalysis.cpp
+10-14llvm/include/llvm/ADT/GenericUniformityImpl.h
+5-4llvm/unittests/Target/AMDGPU/UniformityAnalysisTest.cpp
+5-0llvm/include/llvm/ADT/GenericSSAContext.h
+4-1llvm/include/llvm/ADT/GenericUniformityInfo.h
+0-4llvm/lib/CodeGen/MachineUniformityAnalysis.cpp
+24-682 files not shown
+27-688 files

LLVM/project 972282dclang/test/OpenMP split_codegen.cpp, llvm/lib/CodeGen/GlobalISel GISelValueTracking.cpp

Merge branch 'main' into users/kparzysz/r03-generated-depth
DeltaFile
+1,986-0clang/test/OpenMP/split_codegen.cpp
+875-148mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
+432-381llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
+301-373llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll
+310-363llvm/test/CodeGen/RISCV/rvv/vssubu-vp.ll
+309-364llvm/test/CodeGen/RISCV/rvv/vssub-vp.ll
+4,213-1,629522 files not shown
+18,025-10,652528 files

LLVM/project 5afba80llvm/include/llvm/IR ValueHandle.h, llvm/include/llvm/Transforms/Scalar GVN.h

[GVN] use `AssertingVH` for leaders to improve compilation time (#175870)

Replace the manual check in `verifyRemoved()` with `AssertingVH`
instrumentation. For cases where the leader table becomes very large,
this is a cheaper way to verify we don't have dangling entries in the
leader table.

For this change, we must implement a move constructor for `AssertingVH`
so that we can keep the first entry as an inline-allocated node that
will be handled correctly as the table grows.
DeltaFile
+22-30llvm/lib/Transforms/Scalar/GVN.cpp
+42-0llvm/include/llvm/IR/ValueHandle.h
+18-2llvm/include/llvm/Transforms/Scalar/GVN.h
+17-0llvm/unittests/IR/ValueHandleTest.cpp
+99-324 files