LLVM/project e55b6c0llvm/lib/Transforms/Vectorize LoopVectorizationLegality.cpp, llvm/test/Transforms/LoopVectorize no-fold-tail-by-masking-iv-external-uses.ll tail-folding-iv-outside-user.ll

[LV] Allow tail folding with IVs with outside users (#182322)

#149042 added last-active-lane and removed the restriction that we
couldn't tail fold loops that had outside users (in AllowedExit).

However we still have a restriction that IVs can't have outside users.
This was added separately to the AllowedExit restriction in #81609, but
it looks like #149042 didn't remove it.

AFAICT we currently extract the correct lane for IVs, so this PR relaxes
the restriction. This helps a good few loops get tail folded in
llvm-test-suite.

-force-tail-folding-style=none was added to pr5881-scev-expansion.ll to
preserve the original scev expansion, since otherwise we end up with a
cttz.elts(false, false, true, true) that blocks SCEV analysis. We should
probably teach ConstantFolding to fold it.
DeltaFile
+56-25llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
+59-0llvm/test/Transforms/LoopVectorize/tail-folding-iv-outside-user.ll
+27-27llvm/test/Transforms/LoopVectorize/pr58811-scev-expansion.ll
+0-13llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
+142-654 files

LLVM/project 0fa4a20lldb/source/Target ThreadList.cpp, lldb/test/API/functionalities/gdb_remote_client TestBatchedBreakpointStepOver.py

Merge branch 'main' into revert-181602-opencl-local-suppress-warn-return-stack-address
DeltaFile
+401-0llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
+0-216lldb/test/API/functionalities/gdb_remote_client/TestBatchedBreakpointStepOver.py
+1-164lldb/source/Target/ThreadList.cpp
+0-151lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py
+60-0llvm/test/MC/AMDGPU/gfx1250_asm_vimage_err.s
+27-12llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
+489-54314 files not shown
+565-65020 files

LLVM/project 9a18a29llvm/lib/CodeGen/SelectionDAG DAGCombiner.cpp LegalizeIntegerTypes.cpp, llvm/test/CodeGen/RISCV ctselect-fallback.ll

[ConstantTime] Changed CTSELECT instances to CT_SELECT
DeltaFile
+14-14llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+11-11llvm/test/CodeGen/X86/ctselect.ll
+9-9llvm/test/CodeGen/RISCV/ctselect-fallback.ll
+7-7llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
+6-6llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
+6-6llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
+53-538 files not shown
+68-6814 files

LLVM/project 9569e57lldb/include/lldb/Target ThreadList.h ThreadPlanStepOverBreakpoint.h, lldb/source/Target ThreadList.cpp ThreadPlanStepOverBreakpoint.cpp

Revert "[lldb] Batch breakpoint step-over for threads stopped at the … (#182431)

DeltaFile
+0-216lldb/test/API/functionalities/gdb_remote_client/TestBatchedBreakpointStepOver.py
+1-164lldb/source/Target/ThreadList.cpp
+0-127lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py
+12-21lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp
+0-23lldb/include/lldb/Target/ThreadList.h
+0-19lldb/include/lldb/Target/ThreadPlanStepOverBreakpoint.h
+13-5706 files

LLVM/project 43b3e78lldb/test/API/functionalities/thread/concurrent_events TestConcurrentBatchedBreakpointStepOver.py

reb

Created using spr 1.3.7
DeltaFile
+31-55lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py
+31-551 files

LLVM/project d69ededclang/unittests/Analysis/Scalable/Serialization JSONFormatTest.cpp, lldb/source/Plugins/Highlighter/TreeSitter/Rust/tree-sitter-rust grammar.js

Merge branch 'main' into users/spavloff/arm.round
DeltaFile
+8,874-0llvm/test/CodeGen/PowerPC/clmul-vector.ll
+4,143-746llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
+1,325-1,258llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
+991-1,493llvm/test/CodeGen/X86/broadcast-elm-cross-splat-vec.ll
+1,848-0clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest.cpp
+1,690-0lldb/source/Plugins/Highlighter/TreeSitter/Rust/tree-sitter-rust/grammar.js
+18,871-3,4972,379 files not shown
+110,924-36,8242,385 files

LLVM/project 07f2486lldb/test/API/functionalities/thread/concurrent_events TestConcurrentBatchedBreakpointStepOver.py

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+31-55lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py
+31-551 files

LLVM/project 2ef1759llvm/test/Instrumentation/HWAddressSanitizer use-after-scope.ll

[NFC] [HWASan] Add test for double lifetime



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/182424
DeltaFile
+339-0llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
+339-01 files

SmartOS/live 6d7ebdcsrc/vm/node_modules VM.js, src/vm/node_modules/cloudinit lofs-fat16.js nocloud.js

Add support for vmadm update
DeltaFile
+449-0src/vm/tests/test-cloudinit-nocloud.js
+96-8src/vm/node_modules/VM.js
+9-4src/vm/node_modules/cloudinit/lofs-fat16.js
+3-1src/vm/node_modules/cloudinit/nocloud.js
+557-134 files

LLVM/project 80c0e50lldb/test/API/functionalities/thread/concurrent_events TestConcurrentBatchedBreakpointStepOver.py

[lldb] Fix batched breakpoint step-over test flakiness (#182415)

PR to fix failing test from
https://github.com/llvm/llvm-project/pull/180101 .

Fix the integration test to be resilient to non-deterministic thread
timing. Instead of requiring exact z0/Z0 counts, verify that batching
reduced toggles compared to one at a time stepping.

Also added: skip on `aarch64` where thread scheduling makes batching
unreliable.

Ran the test 20 times, passed all 20.

Co-authored-by: Bar Soloveychik <barsolo at fb.com>
DeltaFile
+31-55lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py
+31-551 files

LLVM/project 8110235llvm/test/CodeGen/Hexagon hvx-zext-split-check.ll, llvm/test/Instrumentation/HWAddressSanitizer use-after-scope.ll

upd

Created using spr 1.3.7
DeltaFile
+576-0llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
+395-0llvm/test/tools/llvm-readobj/ELF/call-graph-info-warn-malformed.test
+321-0llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
+267-0llvm/tools/llvm-readobj/ELFDumper.cpp
+241-0llvm/test/Transforms/InferAddressSpaces/NVPTX/int2ptr.ll
+224-0llvm/test/CodeGen/Hexagon/hvx-zext-split-check.ll
+2,024-048 files not shown
+2,536-18154 files

LLVM/project 90cdaf7llvm/lib/Transforms/Scalar InferAddressSpaces.cpp, llvm/test/CodeGen/Hexagon hvx-zext-split-check.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+576-0llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
+395-0llvm/test/tools/llvm-readobj/ELF/call-graph-info-warn-malformed.test
+267-0llvm/tools/llvm-readobj/ELFDumper.cpp
+241-0llvm/test/Transforms/InferAddressSpaces/NVPTX/int2ptr.ll
+224-0llvm/test/CodeGen/Hexagon/hvx-zext-split-check.ll
+142-23llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
+1,845-2343 files not shown
+2,209-16849 files

LLVM/project 2225677llvm/lib/Transforms/Instrumentation HWAddressSanitizer.cpp, llvm/test/Instrumentation/HWAddressSanitizer use-after-scope.ll use-after-scope-setjmp.ll

[HWASan] tag on lifetime exit and return for non standard lifetime



Reviewers: vitalybuka, pcc

Reviewed By: pcc

Pull Request: https://github.com/llvm/llvm-project/pull/181438
DeltaFile
+62-0llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
+27-12llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
+19-7llvm/test/Instrumentation/HWAddressSanitizer/RISCV/use-after-scope-setjmp.ll
+18-6llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope-setjmp.ll
+126-254 files

LLVM/project a4ec55allvm/lib/Transforms/Instrumentation HWAddressSanitizer.cpp, llvm/lib/Transforms/Utils MemoryTaggingSupport.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+394-31llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
+40-34llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
+27-12llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
+19-7llvm/test/Instrumentation/HWAddressSanitizer/RISCV/use-after-scope-setjmp.ll
+18-6llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope-setjmp.ll
+6-6llvm/test/CodeGen/AArch64/stack-tagging.ll
+504-961 files not shown
+510-977 files

LLVM/project 39e1187llvm/lib/Transforms/Instrumentation HWAddressSanitizer.cpp, llvm/test/Instrumentation/HWAddressSanitizer use-after-scope.ll use-after-scope-setjmp.ll

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

Created using spr 1.3.7

[skip ci]
DeltaFile
+401-0llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
+27-12llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
+19-7llvm/test/Instrumentation/HWAddressSanitizer/RISCV/use-after-scope-setjmp.ll
+18-6llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope-setjmp.ll
+465-254 files

NetBSD/src T38Iz4Usys/kern vfs_vnode.c

   vcache_reclaim: whitespace

   no functional changes
VersionDeltaFile
1.157+3-3sys/kern/vfs_vnode.c
+3-31 files

LLVM/project 9f2a4b4llvm/lib/Transforms/Instrumentation HWAddressSanitizer.cpp, llvm/test/Instrumentation/HWAddressSanitizer use-after-scope.ll use-after-scope-setjmp.ll

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

Created using spr 1.3.7

[skip ci]
DeltaFile
+62-0llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
+27-12llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
+19-7llvm/test/Instrumentation/HWAddressSanitizer/RISCV/use-after-scope-setjmp.ll
+18-6llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope-setjmp.ll
+126-254 files

LLVM/project 9d61e89llvm/lib/Transforms/Instrumentation HWAddressSanitizer.cpp, llvm/test/Instrumentation/HWAddressSanitizer use-after-scope.ll use-after-scope-setjmp.ll

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+401-0llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
+27-12llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
+19-7llvm/test/Instrumentation/HWAddressSanitizer/RISCV/use-after-scope-setjmp.ll
+18-6llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope-setjmp.ll
+465-254 files

LLVM/project a8932c8clang/unittests/Analysis/Scalable/Serialization JSONFormatTest.cpp, llvm/lib/Transforms/Scalar DeadStoreElimination.cpp

rebase

Created using spr 1.3.7
DeltaFile
+8,874-0llvm/test/CodeGen/PowerPC/clmul-vector.ll
+4,143-746llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
+1,325-1,258llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
+991-1,493llvm/test/CodeGen/X86/broadcast-elm-cross-splat-vec.ll
+1,848-0clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest.cpp
+1,000-715llvm/test/Transforms/LoopVectorize/VPlan/vplan-sink-scalars-and-merge.ll
+18,181-4,2122,997 files not shown
+135,312-41,0533,003 files

LLVM/project 278a49bclang/unittests/Analysis/Scalable/Serialization JSONFormatTest.cpp, llvm/lib/Transforms/Scalar DeadStoreElimination.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+8,874-0llvm/test/CodeGen/PowerPC/clmul-vector.ll
+4,143-746llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
+1,325-1,258llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
+991-1,493llvm/test/CodeGen/X86/broadcast-elm-cross-splat-vec.ll
+1,848-0clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest.cpp
+1,000-715llvm/test/Transforms/LoopVectorize/VPlan/vplan-sink-scalars-and-merge.ll
+18,181-4,2122,997 files not shown
+135,312-41,0533,003 files

LLVM/project cfc3104llvm/test/MC/AMDGPU gfx1250_asm_vimage_err.s

[AMDGPU] Add negative tests for register aignment for tensor load/store, NFC (#182358)

DeltaFile
+60-0llvm/test/MC/AMDGPU/gfx1250_asm_vimage_err.s
+60-01 files

LLVM/project 54d5499lldb/include/lldb/Core PluginManager.h, lldb/source/Plugins/Highlighter/Default DefaultHighlighter.cpp

[lldb] Use C linkage for plugin initialization & termination (#182406)

Use C linkage for plugin initialization & termination. I'm working on
adding support for using the existing plugin infrastructure but with
dynamic libraries. Using C linkage makes it easier to dlsym the
initialize and terminate methods.

For example, with this patch,
`__ZN12lldb_private39lldb_initialize_ScriptInterpreterPythonEv` becomes
`_lldb_initialize_ScriptInterpreterPython`.
DeltaFile
+10-6lldb/include/lldb/Core/PluginManager.h
+2-10lldb/source/Plugins/SyntheticFrameProvider/ScriptedFrameProvider/ScriptedFrameProvider.cpp
+2-2lldb/source/Plugins/Highlighter/Default/DefaultHighlighter.cpp
+2-2lldb/source/Plugins/Highlighter/TreeSitter/Rust/RustTreeSitterHighlighter.cpp
+2-2lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
+2-2lldb/source/Plugins/Highlighter/TreeSitter/Swift/SwiftTreeSitterHighlighter.cpp
+20-241 files not shown
+22-267 files

LLVM/project df1137cclang-tools-extra/clang-tidy/modernize RedundantVoidArgCheck.cpp RedundantVoidArgCheck.h

[clang-tidy][NFC] Clean up traversal mode handling in `modernize-redundant-void-arg` (#182408)

#173340 added a bit of code to this check to work around #170953. Now
that the latter PR is merged, we can remove the workaround.
DeltaFile
+2-5clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.cpp
+3-0clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.h
+5-52 files

LLVM/project 75aac19clang/lib/Sema CheckExprLifetime.cpp, clang/test/SemaOpenCL function-scope-local-return.cl

Revert "[OpenCL] Suppress -Wreturn-stack-address for function-scope local var…"

This reverts commit ede47a3b13e4afcbe77db65d2165f42867c4b866.
DeltaFile
+0-13clang/test/SemaOpenCL/function-scope-local-return.cl
+0-3clang/lib/Sema/CheckExprLifetime.cpp
+0-162 files

FreeBSD/src 15c33b6sys/netpfil/ipfilter/netinet fil.c

ipfilter: Fix possible overrun

The destination buffer is FR_GROUPLEN (16 bytes) in length. When
gname is created, the userspace utilities correctly use FR_GROUPLEN
as the buffer length. The kernel should also limit its copy operation to
FR_GROUPLEN bytes to avoid any user written code from exploiting this
vulnerability.

Reported by:    Ilja Van Sprundel <ivansprundel at ioactive.com>

(cherry picked from commit e40817302ebdf89df2f3bcd679fb7f2a18c244dc)
DeltaFile
+1-1sys/netpfil/ipfilter/netinet/fil.c
+1-11 files

FreeBSD/src bdf97b8sys/netpfil/ipfilter/netinet fil.c

ipfilter: Interface name must not extend beyond end of buffer

sifpidx (an interface name) cannot extend beyond the end of the
fr_names buffer.

We do the validation for fr_sifpidx here because it is a union that
contains an offset only when fr_sifpidx points to an interface name,
an offset into fr_names. The union is  an offset into fr_names in this
case only.

interr_tbl now becomes a static variable outside a function to facilitate
its use by two functions within fil.c

Note that sifpidx is only used in ipf_sync() which implments ipf -y.

Reported by:    Ilja Van Sprundel <ivansprundel at ioactive.com>
MFC after:      1 week

(cherry picked from commit 47fb51847fdea3f1cce841b5f2bbbcd6f8a04ee0)
DeltaFile
+21-2sys/netpfil/ipfilter/netinet/fil.c
+21-21 files

FreeBSD/src 6004313sys/netpfil/ipfilter/netinet fil.c

ipfilter: Interface name must not extend beyond end of buffer

sifpidx (an interface name) cannot extend beyond the end of the
fr_names buffer.

We do the validation for fr_sifpidx here because it is a union that
contains an offset only when fr_sifpidx points to an interface name,
an offset into fr_names. The union is  an offset into fr_names in this
case only.

interr_tbl now becomes a static variable outside a function to facilitate
its use by two functions within fil.c

Note that sifpidx is only used in ipf_sync() which implments ipf -y.

Reported by:    Ilja Van Sprundel <ivansprundel at ioactive.com>
MFC after:      1 week

(cherry picked from commit 47fb51847fdea3f1cce841b5f2bbbcd6f8a04ee0)
DeltaFile
+21-2sys/netpfil/ipfilter/netinet/fil.c
+21-21 files

FreeBSD/src 53e1019sys/netpfil/ipfilter/netinet fil.c

ipfilter: Fix possible overrun

The destination buffer is FR_GROUPLEN (16 bytes) in length. When
gname is created, the userspace utilities correctly use FR_GROUPLEN
as the buffer length. The kernel should also limit its copy operation to
FR_GROUPLEN bytes to avoid any user written code from exploiting this
vulnerability.

Reported by:    Ilja Van Sprundel <ivansprundel at ioactive.com>

(cherry picked from commit e40817302ebdf89df2f3bcd679fb7f2a18c244dc)
DeltaFile
+1-1sys/netpfil/ipfilter/netinet/fil.c
+1-11 files

FreeBSD/src afaf984sys/netpfil/ipfilter/netinet fil.c

ipfilter: Interface name must not extend beyond end of buffer

sifpidx (an interface name) cannot extend beyond the end of the
fr_names buffer.

We do the validation for fr_sifpidx here because it is a union that
contains an offset only when fr_sifpidx points to an interface name,
an offset into fr_names. The union is  an offset into fr_names in this
case only.

interr_tbl now becomes a static variable outside a function to facilitate
its use by two functions within fil.c

Note that sifpidx is only used in ipf_sync() which implments ipf -y.

Reported by:    Ilja Van Sprundel <ivansprundel at ioactive.com>
MFC after:      1 week

(cherry picked from commit 47fb51847fdea3f1cce841b5f2bbbcd6f8a04ee0)
DeltaFile
+21-2sys/netpfil/ipfilter/netinet/fil.c
+21-21 files

FreeBSD/src dda404esys/netpfil/ipfilter/netinet fil.c

ipfilter: Fix possible overrun

The destination buffer is FR_GROUPLEN (16 bytes) in length. When
gname is created, the userspace utilities correctly use FR_GROUPLEN
as the buffer length. The kernel should also limit its copy operation to
FR_GROUPLEN bytes to avoid any user written code from exploiting this
vulnerability.

Reported by:    Ilja Van Sprundel <ivansprundel at ioactive.com>

(cherry picked from commit e40817302ebdf89df2f3bcd679fb7f2a18c244dc)
DeltaFile
+1-1sys/netpfil/ipfilter/netinet/fil.c
+1-11 files