LLVM/project 064e529compiler-rt/lib/rtsan rtsan_interceptors_posix.cpp

[rtsan] Fix REAL call for preadv64 (#198563)

Seemed to just be a typo matching the name of the intercepted function
DeltaFile
+1-1compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
+1-11 files

LLVM/project 2b26f10flang/lib/Semantics resolve-names.cpp

[flang][OpenMP] Remove unnecessary code from OmpVisitor, NFC
DeltaFile
+21-66flang/lib/Semantics/resolve-names.cpp
+21-661 files

LLVM/project 28d6673flang/test/Integration/OpenMP atomic-compare.f90, llvm/lib/Frontend/OpenMP OMPIRBuilder.cpp

Revert "[Flang] [OpenMP] atomic compare (#184761)" (#198848)

This reverts commit 91467766a8afb52439619163828c5f6816ddd550.

This was causing tests to be quite flaky. See #198776.
DeltaFile
+0-517mlir/test/Dialect/OpenMP/invalid.mlir
+0-359mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+59-230llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+0-250flang/test/Integration/OpenMP/atomic-compare.f90
+0-209mlir/test/Target/LLVMIR/openmp-llvm.mlir
+0-171mlir/include/mlir/Dialect/OpenACCMPCommon/Interfaces/AtomicInterfaces.td
+59-1,73613 files not shown
+128-2,28319 files

LLVM/project 024c97blibcxx/include/__functional function.h

Add missing annotatinos for Apple platforms

These seemed to be missed in #193045.
DeltaFile
+6-0libcxx/include/__functional/function.h
+6-01 files

LLVM/project 01c2cd3flang/lib/Lower/Support Utils.cpp, flang/test/Lower/OpenMP lastprivate-equivalence.f90

[flang][OpenMP] Fix EQUIVALENCE variable privatization in OpenMP (#197726)

Fixes #197553

EQUIVALENCE aliases are lowered with `fir.ptr` addresses
(`castAliasToPointer` in ConvertVariable.cpp) to inform alias analysis.
However, `privatizeSymbol()` in Utils.cpp treated all `fir::PointerType`
values as true Fortran POINTERs, skipping the `unwrapRefType` that
computes the correct allocation type. For arrays, this caused the
privatizer to allocate pointer-sized storage instead of the full array,
resulting in stack buffer overflows at runtime.

The fix adds a `!semantics::IsPointer()` check so that only true Fortran
POINTERs preserve the `fir.ptr` wrapping. EQUIVALENCE aliases are
correctly unwrapped to their underlying type.

**Changes:**
- flang/lib/Lower/Support/Utils.cpp: Gate the `PointerType` guard on
`semantics::IsPointer` to distinguish true POINTERs from EQUIVALENCE

    [6 lines not shown]
DeltaFile
+74-0flang/test/Lower/OpenMP/lastprivate-equivalence.f90
+10-13flang/test/Lower/OpenMP/DelayedPrivatization/equivalence.f90
+4-1flang/lib/Lower/Support/Utils.cpp
+88-143 files

LLVM/project d28e47cllvm/lib/Target/AMDGPU SIISelLowering.cpp, llvm/test/CodeGen/AMDGPU permute.ll

[AMDGPU] Fix matchPERM byte tracker for SRA past operand width (#198708)

Bytes past the operand are 0 for SRL but the sign bit for SRA. The old
code treated both as 0, so v_perm_b32 picked the wrong byte for SRA

Example:
`ashr x, 24` keeps only x's byte 0 in the result. The upper bytes are
copies of x's sign bit, not bytes of x. The matcher used to map them
back to bytes of x, producing a perm mask that ignored the sign extend
DeltaFile
+39-0llvm/test/CodeGen/AMDGPU/permute.ll
+12-10llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+51-102 files

LLVM/project 42cc9b5llvm/lib/Target/AArch64 AArch64ISelLowering.cpp, llvm/test/CodeGen/AArch64 alias_mask.ll sve-fixed-length-masked-expandloads.ll

[AArch64] Use ADDP tree for v16i8 to i16 bitmask extraction (#192974)

```
Before:
    ext  v1.16b, v0.16b, v0.16b, #8
    zip1 v0.16b, v0.16b, v1.16b
    addv h0, v0.8h
    fmov w0, s0

After:
    addp v0.16b, v0.16b, v0.16b
    addp v0.16b, v0.16b, v0.16b
    addp v0.16b, v0.16b, v0.16b
    umov w0, v0.h[0]
```

The existing lowering in vectorToScalarBitmask for v16i8 used an
EXT+ZIP1+ADDV sequence to pack the per-lane bits into an i16. The
horizontal ADDV is expensive on some microarchitectures and forces an

    [13 lines not shown]
DeltaFile
+58-57llvm/test/CodeGen/AArch64/alias_mask.ll
+49-49llvm/test/CodeGen/AArch64/sve-fixed-length-masked-expandloads.ll
+16-16llvm/test/CodeGen/AArch64/dag-combine-setcc.ll
+12-12llvm/test/CodeGen/AArch64/fixed_masked_deinterleaved_loads.ll
+12-12llvm/test/CodeGen/AArch64/fixed_masked_interleaved_stores.ll
+13-10llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+160-1563 files not shown
+180-1769 files

LLVM/project b180ecallvm/lib/Frontend/OpenMP OMPIRBuilder.cpp, llvm/unittests/Frontend OpenMPIRBuilderTest.cpp

Use SmallBitVector for deterministic dead-block tracking (authored by slinder1)

Track candidate blocks by stable BB indices instead of mutating pointer
sets, avoiding SmallPtrSet tombstone/rehash/iteration-order issues while
preserving original BB order for deletion.
DeltaFile
+33-30llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+3-0llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
+36-302 files

LLVM/project 61750f4libc/src/stdlib mblen.cpp mblen.h, libc/src/wchar mblen.cpp mblen.h

[libc] move mblen to stdlib (#198642)

Move mblen from wchar to stdlib to conform with C standard. Also update
headers to match new style.

Assisted-by: Automated tooling, human reviewed.
DeltaFile
+109-0libc/test/src/stdlib/mblen_test.cpp
+0-104libc/test/src/wchar/mblen_test.cpp
+40-0libc/src/stdlib/mblen.cpp
+0-35libc/src/wchar/mblen.cpp
+26-0libc/src/stdlib/mblen.h
+0-21libc/src/wchar/mblen.h
+175-1607 files not shown
+210-19313 files

LLVM/project 57712b1.ci generate_test_report_lib.py generate_test_report_lib_test.py

[CI] Successful build and no tests running is now a notification (#198684)

check-libc now uses llvm-lit to run tests instead of running the
unittests directly through ninja. This means there should not be any
cases in tree where the build could succeed but we do not pick up any
tests as running. Still pass the build in this case because if
everything passes with exit code 0 it is wrong not to, but make a note
to the user that this is unexpected.
DeltaFile
+5-1.ci/generate_test_report_lib.py
+2-2.ci/generate_test_report_lib_test.py
+7-32 files

LLVM/project 8dc3377llvm/test/CodeGen/AMDGPU/GlobalISel legalize-sextload-zextload-s16-true16.mir legalize-sextload-s16-true16.mir

PR feedback
DeltaFile
+0-376llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-zextload-s16-true16.mir
+87-0llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-s16-true16.mir
+5-1llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll
+92-3773 files

LLVM/project f00ec3fclang/include/clang/Analysis/Analyses/LifetimeSafety LoanPropagation.h, clang/lib/Analysis/LifetimeSafety LoanPropagation.cpp

[NFC][LifetimeSafety]: Track assignment history within a single CFGBlock (#196075)

## Summary

Tracking assignment history allows us to backtrack and provide more
informative error messages, helping users better understand the root
cause.

As discussed in
https://github.com/llvm/llvm-project/pull/188467#issuecomment-4359071778,
I am splitting the original #188467 into smaller parts. This PR submits
the core logic: performing a reverse search for assignment history
within a single CFG block.

A simple unit test has been added to verify the basic functionality of
the algorithm.

## Details


    [7 lines not shown]
DeltaFile
+123-0clang/unittests/Analysis/LifetimeSafetyTest.cpp
+42-0clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
+10-0clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
+175-03 files

LLVM/project d90edd1llvm/lib/Target/DirectX/DirectXIRPasses DXILDebugInfo.cpp, llvm/test/tools/dxil-dis di-subprogram.ll debug-info.ll

[DirectX] Do not emit DISubprograms as distinct (#197453)

LLVM 3.7 never did this.
DeltaFile
+21-0llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.cpp
+1-1llvm/test/tools/dxil-dis/di-subprogram.ll
+1-1llvm/test/tools/dxil-dis/debug-info.ll
+1-1llvm/test/tools/dxil-dis/di-subrangetype.ll
+24-34 files

LLVM/project bdbd4e5flang/lib/Semantics resolve-directives.cpp

[flang][OpenMP] Clarify comment in resolve-directives.cpp, NFC
DeltaFile
+10-8flang/lib/Semantics/resolve-directives.cpp
+10-81 files

LLVM/project 7b675d7llvm/lib/Target/PowerPC PPCInstrVSX.td PPCInstr64Bit.td

[PowerPC][NFC] Change arguments of PPCPostRAExpPseudo/PseudoXFormMemOp

The assembler string of the pseudo is almost always a # followed by
the name of the pseudo. A good part of the pseudos does not have a
pattern. Changing the order of arguments asmstr and pattern
in PPCPostRAExpPseudo and PseudoXFormMemOp, and assigning default
values, reduces repetitions.
DeltaFile
+4-19llvm/lib/Target/PowerPC/PPCInstrVSX.td
+4-7llvm/lib/Target/PowerPC/PPCInstr64Bit.td
+5-3llvm/lib/Target/PowerPC/PPCInstrFormats.td
+4-4llvm/lib/Target/PowerPC/PPCInstrInfo.td
+3-4llvm/lib/Target/PowerPC/PPCInstrMMA.td
+20-375 files

LLVM/project cbd69a6lldb/include/lldb/Target Process.h, lldb/source/Target Process.cpp

[lldb] Fix delayed breakpoints on running processes (#198747)

Breakpoints should never be delayed on a running process, as they can
immediately affect program execution.
DeltaFile
+25-0lldb/test/API/functionalities/breakpoint/breakpoint_while_running/TestBreakpointWhileRunning.py
+12-0lldb/test/API/functionalities/breakpoint/breakpoint_while_running/main.c
+3-0lldb/test/API/functionalities/breakpoint/breakpoint_while_running/Makefile
+3-0lldb/include/lldb/Target/Process.h
+3-0lldb/source/Target/Process.cpp
+46-05 files

LLVM/project 336ab5ellvm/test/CodeGen/AMDGPU/GlobalISel legalize-sextload-zextload-s16-true16.mir

[AMDGPU][True16] Create tests that will demonstrate true16 G_SEXTLOAD/G_ZEXTLOAD legalization changes
DeltaFile
+376-0llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-zextload-s16-true16.mir
+376-01 files

LLVM/project c525e31clang/test/Driver amdgpu-unwind.cl

[Clang][test] Use `-fopenmp=libomp` explicitly for amdgpu-unwind.cl (#198821)

This is similar to what was done in
https://github.com/llvm/llvm-project/pull/180221
DeltaFile
+4-4clang/test/Driver/amdgpu-unwind.cl
+4-41 files

LLVM/project 938bbe5lldb/test/API/functionalities/breakpoint/breakpoint_while_running TestBreakpointWhileRunning.py

fixup! remove extra test command
DeltaFile
+0-1lldb/test/API/functionalities/breakpoint/breakpoint_while_running/TestBreakpointWhileRunning.py
+0-11 files

LLVM/project 08d869clldb/include/lldb/Target Process.h, lldb/source/Target Process.cpp

[lldb] Fix delayed breakpoints on running processes

Breakpoints should never be delayed on a running process, as they can
immediately affect program execution.
DeltaFile
+26-0lldb/test/API/functionalities/breakpoint/breakpoint_while_running/TestBreakpointWhileRunning.py
+12-0lldb/test/API/functionalities/breakpoint/breakpoint_while_running/main.c
+3-0lldb/include/lldb/Target/Process.h
+3-0lldb/test/API/functionalities/breakpoint/breakpoint_while_running/Makefile
+3-0lldb/source/Target/Process.cpp
+47-05 files

LLVM/project a2134b8lldb/include/lldb/Target Process.h, lldb/source/Target Process.cpp ThreadPlanStepOverBreakpoint.cpp

[lldb][NFC] Sink eager breakpoint logic into ExecuteBreakpointSiteAction (#198741)

A future patch will want to control whether all breakpoints are eager or
not based on whether the process is running. Sinking the logic allows
for a smaller diff.
DeltaFile
+20-22lldb/source/Target/Process.cpp
+4-2lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp
+2-1lldb/include/lldb/Target/Process.h
+26-253 files

LLVM/project edf8081llvm/test/CodeGen/X86 sad.ll

[X86] Update more PSADBW tests to match middle-end vector.reduce.add codegen (#198806)

Missed in #198760
DeltaFile
+3-17llvm/test/CodeGen/X86/sad.ll
+3-171 files

LLVM/project 825b89eclang/lib/Parse ParseStmt.cpp

nit: comment style
DeltaFile
+1-1clang/lib/Parse/ParseStmt.cpp
+1-11 files

LLVM/project 8f44776libcxx/include/__cxx03/__memory shared_ptr.h, libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const unique_ptr.pass.cpp

[libc++][C++03] Cherry-pick #165619 (#198829)
DeltaFile
+6-26libcxx/include/__cxx03/__memory/shared_ptr.h
+0-2libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/unique_ptr.pass.cpp
+6-282 files

LLVM/project d5c052flldb/include/lldb/Target Process.h, lldb/source/Target Process.cpp

[lldb] Fix delayed breakpoints on running processes

Breakpoints should never be delayed on a running process, as they can
immediately affect program execution.
DeltaFile
+26-0lldb/test/API/functionalities/breakpoint/breakpoint_while_running/TestBreakpointWhileRunning.py
+12-0lldb/test/API/functionalities/breakpoint/breakpoint_while_running/main.c
+3-0lldb/test/API/functionalities/breakpoint/breakpoint_while_running/Makefile
+3-0lldb/include/lldb/Target/Process.h
+3-0lldb/source/Target/Process.cpp
+47-05 files

LLVM/project 406775blibcxx/include/__cxx03/__atomic atomic.h cxx_atomic_impl.h, libcxx/test/std/atomics/atomics.types.generic trivially_copyable.verify.cpp

[libc++][C++03] Cherry-pick #131754 (#198827)
DeltaFile
+8-1libcxx/include/__cxx03/__atomic/atomic.h
+0-3libcxx/include/__cxx03/__atomic/cxx_atomic_impl.h
+0-2libcxx/test/std/atomics/atomics.types.generic/trivially_copyable.verify.cpp
+8-63 files

LLVM/project 1cbb495clang/lib/CIR/CodeGen Address.h

Remove unused address helper
DeltaFile
+0-6clang/lib/CIR/CodeGen/Address.h
+0-61 files

LLVM/project 172f0e9lldb/include/lldb/Target Process.h, lldb/source/Target Process.cpp ThreadPlanStepOverBreakpoint.cpp

fixup! remove default param value
DeltaFile
+8-8lldb/source/Target/Process.cpp
+4-2lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp
+1-1lldb/include/lldb/Target/Process.h
+13-113 files

LLVM/project c06bd06llvm/lib/Frontend/OpenMP OMPIRBuilder.cpp

Apply suggestion from community.

I'll update the PR descrition and title for the correct information.
DeltaFile
+10-6llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+10-61 files

LLVM/project 612ca93lldb/include/lldb/Target Process.h, lldb/source/Target Process.cpp

fixup! rename variable to forbid_delay
DeltaFile
+5-5lldb/source/Target/Process.cpp
+1-1lldb/include/lldb/Target/Process.h
+6-62 files