LLVM/project 46c1fa8llvm/lib/Transforms/Vectorize LoopVectorize.cpp

[VPlan] Use ResumeForEpilogue to get epilogue vector trip count (NFC). (#198210)

Use ResumeForEpilogue to look up the vector trip count instead of plain
IR lookup. Also prepares for non-phi resume values.
DeltaFile
+26-23llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+26-231 files

OpenBSD/ports 1Rc1iElsecurity/pdf-parser distinfo Makefile

   update 0.7.13 -> 0.7.14
VersionDeltaFile
1.13+2-2security/pdf-parser/distinfo
1.24+1-2security/pdf-parser/Makefile
+3-42 files

OpenBSD/ports 63dXW8nsysutils/htop distinfo Makefile, sysutils/htop/patches patch-openbsd_OpenBSDProcessTable_c

   Update htop to 3.5.1.
VersionDeltaFile
1.16+2-2sysutils/htop/distinfo
1.2+1-1sysutils/htop/patches/patch-openbsd_OpenBSDProcessTable_c
1.41+1-1sysutils/htop/Makefile
+4-43 files

FreeBSD/ports 1b2c6abeditors/sciteco pkg-plist Makefile, editors/sciteco/files pkg-message.in

editors/sciteco: updated to v2.5.2

* SciTECO no longer modifies files after installation, so Poudriere
  builds should be fixed now even without changing BINMODE.
* LTO-support is now an option and disabled by default.
* MALLOC_REPLACEMENT is now the default for FreeBSD, so we added it to OPTIONS_DEFAULT.
* Maintainer address and website updated to their new place at sciteco.fmsbw.de.

PR:             283601
Reported by:    Robin Haberkorn <rhaberkorn at fmsbw.de> (maintainer)

(cherry picked from commit 64ae62712c3b8312cff8c2b5efe42b0124e5dc76)
DeltaFile
+17-5editors/sciteco/pkg-plist
+13-7editors/sciteco/Makefile
+3-3editors/sciteco/distinfo
+1-1editors/sciteco/files/pkg-message.in
+34-164 files

FreeBSD/src 56bc43fshare/man/man9 locking.9

locking.9: warn about using sleepable lock address as a sleep channel

Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
Differential revision:  https://reviews.freebsd.org/D57012
DeltaFile
+10-5share/man/man9/locking.9
+10-51 files

OpenBSD/ports Nv2dpfbwayland/mango distinfo Makefile, wayland/mango/patches patch-src_dispatch_bind_define_h

   wayland/mango: Update to 0.13.0
VersionDeltaFile
1.3+2-2wayland/mango/distinfo
1.3+2-2wayland/mango/patches/patch-src_dispatch_bind_define_h
1.3+1-1wayland/mango/Makefile
+5-53 files

OpenBSD/ports nAIABuKsecurity/volatility3 distinfo Makefile, security/volatility3/pkg PLIST

   update 2.27.0 -> 2.28.0
VersionDeltaFile
1.7+6-0security/volatility3/pkg/PLIST
1.4+2-2security/volatility3/distinfo
1.7+1-1security/volatility3/Makefile
+9-33 files

OpenBSD/ports a6wit9Zprint/poppler Makefile

   Oops! Let the clang-scan-deps hack actually work.
VersionDeltaFile
1.210+1-1print/poppler/Makefile
+1-11 files

FreeBSD/ports 290bffaastro/kosmorro pkg-plist Makefile

astro/kosmorro: upgrade to 1.0.2

Releases notes at https://github.com/Kosmorro/kosmorro/releases
DeltaFile
+9-9astro/kosmorro/pkg-plist
+6-7astro/kosmorro/Makefile
+3-3astro/kosmorro/distinfo
+18-193 files

FreeBSD/ports e65866dastro/py-kosmorrolib Makefile distinfo

astro/py-kosmorrolib: upgrade to 1.0.13

Since NumPy 2 is available, we can upgrade it!

Releases notes at https://github.com/Kosmorro/lib/releases/
DeltaFile
+4-3astro/py-kosmorrolib/Makefile
+3-3astro/py-kosmorrolib/distinfo
+7-62 files

FreeBSD/ports c22609bmultimedia/ffmpeg6 distinfo Makefile

multimedia/ffmpeg6: upgrade to 6.1.5

Release notes at
https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/refs/heads/release/6.1:/RELEASE_NOTES
DeltaFile
+3-9multimedia/ffmpeg6/distinfo
+2-2multimedia/ffmpeg6/Makefile
+5-112 files

OpenBSD/ports M7X0awqtextproc/uncrustify Makefile distinfo

   simple update 0.82.0 -> 0.83.0
VersionDeltaFile
1.36+1-3textproc/uncrustify/Makefile
1.18+2-2textproc/uncrustify/distinfo
+3-52 files

FreeBSD/src 7bdf2b5sys/fs/nullfs null_vfsops.c

nullfs: do not allow to mount a vnode over itself

This causes recursion in VFS that is not worth handling.

PR:     275570
Reported by:    Alex S <iwtcex at gmail.com>
Reviewed by:    markj
Tested by:      pho
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D57043
DeltaFile
+8-0sys/fs/nullfs/null_vfsops.c
+8-01 files

LLVM/project 856f7d4llvm/lib/Transforms/Vectorize LoopVectorize.cpp

[LV] Extract helper to simplify phi removal in connectEpiVectorL (NFC) (#198203)

Extract the repeated edge-redirect + DomTree update pattern into a
RedirectEdge lambda, and convert the separate removeIncomingValue calls
for check blocks into a loop.
DeltaFile
+21-31llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+21-311 files

OpenBSD/ports GMFmdiPemulators/fuse-utils distinfo Makefile

   Update fuse-utils to 1.4.5.
VersionDeltaFile
1.17+2-2emulators/fuse-utils/distinfo
1.39+1-1emulators/fuse-utils/Makefile
+3-32 files

LLVM/project 1745344clang/test/CodeGen/AArch64 neon-perm.c, clang/test/CodeGen/AArch64/neon perm.c

rebase

Created using spr 1.3.7
DeltaFile
+1,250-1,357llvm/test/CodeGen/X86/avx512-calling-conv.ll
+203-915llvm/test/CodeGen/X86/vector-compress.ll
+158-868llvm/test/CodeGen/X86/avx512-ext.ll
+154-866llvm/test/CodeGen/X86/avx512-mask-op.ll
+492-120clang/test/CodeGen/AArch64/neon/perm.c
+0-383clang/test/CodeGen/AArch64/neon-perm.c
+2,257-4,509144 files not shown
+4,879-5,730150 files

LLVM/project e78a23cclang/test/CodeGen/AArch64 neon-perm.c, clang/test/CodeGen/AArch64/neon perm.c

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1,250-1,357llvm/test/CodeGen/X86/avx512-calling-conv.ll
+203-915llvm/test/CodeGen/X86/vector-compress.ll
+158-868llvm/test/CodeGen/X86/avx512-ext.ll
+154-866llvm/test/CodeGen/X86/avx512-mask-op.ll
+492-120clang/test/CodeGen/AArch64/neon/perm.c
+0-383clang/test/CodeGen/AArch64/neon-perm.c
+2,257-4,509144 files not shown
+4,879-5,730150 files

LLVM/project df90525llvm/lib/Transforms/Scalar JumpTableToSwitch.cpp

[JTS] Readd assertion

Now that VP metadata has been cleaned up a little bit, we can reenable
this assertion.

Reviewers: alexander-shaposhnikov, mtrofin

Pull Request: https://github.com/llvm/llvm-project/pull/198141
DeltaFile
+3-4llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
+3-41 files

LLVM/project 94584e7llvm/lib/Transforms/Scalar JumpTableToSwitch.cpp

rebase

Created using spr 1.3.7
DeltaFile
+3-4llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
+3-41 files

LLVM/project 56ef779llvm/lib/Transforms/Scalar JumpTableToSwitch.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+3-4llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
+3-41 files

LLVM/project c497efbllvm/lib/Transforms/InstCombine InstCombineSelect.cpp, llvm/test/Transforms/InstCombine logical-select.ll

[InstCombine] Convert logical and/or with trunc nuw to i1 into bitwise ops (#198178)

if it is know that `trunc nuw to i1 ` can not be poison logical and/or
can be folded to bitwise ops.

proof https://alive2.llvm.org/ce/z/xQ2Sj-
DeltaFile
+55-0llvm/test/Transforms/InstCombine/logical-select.ll
+13-5llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
+68-52 files

LLVM/project f8803b0libcxx/include/__cxx03/__memory uninitialized_algorithms.h, libcxx/include/__memory uninitialized_algorithms.h

[libc++] Require the exact assignment expression to be trivial in __uninitialized_allocator_copy_impl

__uninitialized_allocator_copy_impl has an optimization that replaces allocator_traits::construct with std::copy for raw pointer ranges when the element type is trivially copy constructible and trivially copy assignable.

The copy-assignment trait only checks whether assignment from const T& is trivial. That is weaker than the expression used by std::copy, which evaluates *out = *in. If overload resolution selects a different non-trivial assignment operator for that expression, std::copy can call that operator on uninitialized storage.

Check is_trivially_assignable<_Out&, _In&> instead in both header copies. This matches the assignment expression used by std::copy, preserves the optimized path when that assignment is actually trivial, and avoids making non-const raw pointer callers select the generic allocator_traits::construct overload due to a qualification conversion.

Add a vector copy-constructor regression test with a type whose defaulted copy assignment is trivial but whose templated assignment operator is selected for non-const lvalue sources.

Tested with:
build-libcxx-fresh/bin/llvm-lit -q libcxx/test/std/containers/sequences/vector/vector.cons/copy.pass.cpp libcxx/test/libcxx/memory/uninitialized_allocator_copy.pass.cpp
build-libcxx-fresh/bin/llvm-lit -q --param std=c++03 libcxx/test/libcxx/memory/uninitialized_allocator_copy.pass.cpp
build-libcxx-fresh/bin/llvm-lit -q --param std=c++20 libcxx/test/std/containers/sequences/vector/vector.cons/copy.pass.cpp
build-libcxx-fresh/bin/llvm-lit -q --param std=c++11 libcxx/test/std/containers/sequences/vector/vector.cons/copy.pass.cpp
DeltaFile
+76-1libcxx/test/std/containers/sequences/vector/vector.cons/copy.pass.cpp
+1-1libcxx/include/__cxx03/__memory/uninitialized_algorithms.h
+1-1libcxx/include/__memory/uninitialized_algorithms.h
+78-33 files

OpenBSD/ports xhz9R0cx11/tktreectrl Makefile

   drop maintainer
VersionDeltaFile
1.23+1-2x11/tktreectrl/Makefile
+1-21 files

OpenBSD/ports vKvDm03x11/tkhtml Makefile

   drop maintainer
VersionDeltaFile
1.15+1-2x11/tkhtml/Makefile
+1-21 files

LLVM/project 0e92b55compiler-rt/lib/sanitizer_common sanitizer_platform_limits_solaris.cpp

[sanitizer_common] Fix sanitizer_platform_limits_solaris.cpp compilation (#198158)

When switching `clang++` to the default Solaris 11.4 compilation
environment, XPG7 + extensions, `sanitizer_platform_limits_solaris.cpp`
fails to compile:

```
compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.cpp:93:53: error: use of undeclared identifier 'ucontext_t'; did you mean 'ucontext_t_sz'?
   93 |   unsigned ucontext_t_sz(void *ctx) { return sizeof(ucontext_t); }
      |                                                     ^~~~~~~~~~
      |                                                     ucontext_t_sz
compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.cpp:93:12: note: 'ucontext_t_sz' declared here
   93 |   unsigned ucontext_t_sz(void *ctx) { return sizeof(ucontext_t); }
      |            ^
compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.cpp:93:52: error: invalid application of 'sizeof' to a function type
   93 |   unsigned ucontext_t_sz(void *ctx) { return sizeof(ucontext_t); }
      |                                                    ^~~~~~~~~~~~

```

    [4 lines not shown]
DeltaFile
+1-0compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.cpp
+1-01 files

LLVM/project 598acfbcompiler-rt/test/asan/TestCases/Posix coverage-module-unloaded.cpp, compiler-rt/test/sanitizer_common/TestCases get_module_and_offset_for_pc.cpp

[sanitizer][test] Fix coverage-module-unloaded.cpp etc. on Solaris (#198164)

When switching `clang++` to the default Solaris 11.4 compilation
environment, XPG7 + extensions, two tests `FAIL`:

```
  AddressSanitizer-i386-sunos :: TestCases/Posix/coverage-module-unloaded.cpp
  AddressSanitizer-i386-sunos-dynamic :: TestCases/Posix/coverage-module-unloaded.cpp

  SanitizerCommon-asan-i386-SunOS :: get_module_and_offset_for_pc.cpp
  SanitizerCommon-ubsan-i386-SunOS :: get_module_and_offset_for_pc.cpp
  SanitizerCommon-ubsan-x86_64-SunOS :: get_module_and_offset_for_pc.cpp
```

The failure mode is the same in both cases: the tests fail to link with
`main` undefined. This happens because `<sys/mman.h>` defines

```
#define SHARED          0x10

    [13 lines not shown]
DeltaFile
+3-3compiler-rt/test/asan/TestCases/Posix/coverage-module-unloaded.cpp
+2-2compiler-rt/test/sanitizer_common/TestCases/get_module_and_offset_for_pc.cpp
+5-52 files

OpenBSD/ports s9KuKakx11/tkdnd Makefile

   drop maintainer
VersionDeltaFile
1.13+1-3x11/tkdnd/Makefile
+1-31 files

OpenBSD/ports ObvC25Vtextproc/TclXML Makefile

   drop maintainer
VersionDeltaFile
1.37+1-2textproc/TclXML/Makefile
+1-21 files

OpenZFS/src 40a8765include/sys zap_impl.h

zap_impl: use flex array field for mzap_phys_t.mz_chunks

mz_phys_t is always a full-block allocation, with mz_chunks[] as an
array over the rest of the block past the header.

Recent Linux compiled with CONFIG_UBSAN will complain about this:

    UBSAN: array-index-out-of-bounds in module/zfs/zap.c:1236:28
    index 2 is out of range for type 'mzap_ent_phys_t [1]'

The fix is straightforward; simply convert this field to a flex member.

Sponsored-by: TrueNAS
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Signed-off-by: Rob Norris <rob.norris at truenas.com>
Closes #18550
DeltaFile
+2-1include/sys/zap_impl.h
+2-11 files

Linux/linux e5d505ekernel/trace Makefile remote_test.c

Merge tag 'trace-v7.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace

Pull tracing fixes from Steven Rostedt:

 - Add more functions to the remote allowed list

   randconfig found more functions that are allowed for the remote code
   for s390 and arm. Add them to the allowed list.

 - Fix remote_test error path

   If one of the simple ring buffers fails to load, the code is supposed
   to rollback its initialized buffers. Instead of rolling back the
   buffers for the failed load, it uses the global variable and rolls
   back all the successfully loaded buffers.

* tag 'trace-v7.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:
  tracing: Fix desc in error path for the trace remote test module
  ring-buffer remote: Avoid unexpected symbol warnings (arm, s390)
DeltaFile
+2-2kernel/trace/Makefile
+2-2kernel/trace/remote_test.c
+4-42 files