LLVM/project b8ca2a8llvm/lib/Target/AArch64 AArch64InstrFormats.td AArch64InstrInfo.td, llvm/lib/Target/AArch64/AsmParser AArch64AsmParser.cpp

[AArch64][llvm] Some instructions should be `HINT` aliases (NFC)

Implement the following instructions as a `HINT` alias instead of a
dedicated instruction in separate classes:
  * `stshh`
  * `stcph`
  * `shuh`
  * `tsb`

Updated all their helper methods too, and updated the `stshh` pseudo
expansion for the intrinsic to emit `HINT #0x30 | policy`.

Code in AArch64AsmPrinter::emitInstruction identified an initial BTI using a
broad bitmask on the HINT immediate, which also matched shuh/stcph (50..52)
This could move the patchable entry label after a non-BTI instruction.
Replaced it with an exact BTI check using the BTI HINT range (32..63) and
AArch64BTIHint::lookupBTIByEncoding(Imm ^ 32).

A following change will remove duplicated code and simplify.

    [2 lines not shown]
DeltaFile
+115-0llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
+41-39llvm/lib/Target/AArch64/AArch64InstrFormats.td
+22-3llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
+5-14llvm/lib/Target/AArch64/AArch64InstrInfo.td
+5-10llvm/lib/Target/AArch64/AArch64SystemOperands.td
+4-2llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
+192-683 files not shown
+201-719 files

LLVM/project 5f6835dlldb/source/Plugins/Process/Linux NativeRegisterContextLinux_arm64.cpp

[lldb][AArch64][Linux] Qualify uses of user_sve_header (#190130)

Fixes #165413. Where a build failure was reported:
```
/b/s/w/ir/x/w/llvm-llvm-project/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp:1182:9: error: unknown type name 'user_sve_header'; did you mean 'sve::user_sve_header'?
 1182 |         user_sve_header *header =
      |         ^~~~~~~~~~~~~~~
      |         sve::user_sve_header
```
To fix this, add sve:: as we do for all other uses of this.

This is LLDB's copy of a structure that Linux also defines. I think the
build worked on some machines because that version ended up being
included, but with a more isolated build, it may not.

We have our own definition of it so we can be sure what we're using in
case Linux extends it later.
DeltaFile
+3-3lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
+3-31 files

LLVM/project 76fc936clang/include/clang/Basic BuiltinsLoongArchLSX.def BuiltinsLoongArchLASX.def, clang/test/CodeGen/LoongArch/lasx lasxintrin-lax-vector-conversions.c

[Clang][LoongArch] Align LSX/LASX built-in signatures with intrinsic types to avoid lax conversions (#189900)

Update the built-in signatures in BuiltinsLoongArchLSX.def and
BuiltinsLoongArchLASX.def to precisely match the vector types used in
the corresponding intrinsic headers (lsxintrin.h and lasxintrin.h).

This alignment ensures that these intrinsics can be compiled
successfully even when -flax-vector-conversions=none is specified, since
the built-in arguments no longer rely on implicit vector type
conversions.

Added new test cases to verify the macro-defined LSX/LASX
intrinsic interfaces under -flax-vector-conversions=none.

Fixes #189898
DeltaFile
+528-0clang/test/CodeGen/LoongArch/lasx/lasxintrin-lax-vector-conversions.c
+463-0clang/test/CodeGen/LoongArch/lsx/lsxintrin-lax-vector-conversions.c
+20-20clang/include/clang/Basic/BuiltinsLoongArchLSX.def
+18-18clang/include/clang/Basic/BuiltinsLoongArchLASX.def
+1,029-384 files

OpenBSD/src RRat9wwusr.bin/tmux sort.c

   Fix NULL dereference in sort.c, from Dane Jensen.
VersionDeltaFile
1.4+2-1usr.bin/tmux/sort.c
+2-11 files

LLVM/project f95d973clang/lib/CIR/Lowering/DirectToLLVM LowerToLLVM.cpp

fix fmt
DeltaFile
+4-5clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+4-51 files

FreeBSD/src ed71162lib/libc/amd64/string strrchr.S

libc/amd64/strrchr.S: rewrite and fix scalar implementation

The original scalar implementation of strrchr() had incorrect
logic that failed if the character searched for was the NUL
character.  It was also possibly affected by the issue fixed
in 3d8ef251a for strchrnul().

Rewrite the function with logic that actually works.  We defer
checking for the character until after we have checked for NUL.
When we encounter the final NUL byte, we mask out the characters
beyond the tail before checking for a match.

This bug only affects users running on amd64 with ARCHLEVEL=scalar
(cf. simd(7)).  The default configuration is not affected.

The bug was unfortunately not caught by the unit test inherited
from NetBSD.  An extended unit test catching the issue is proposed
in D56037.


    [9 lines not shown]
DeltaFile
+26-52lib/libc/amd64/string/strrchr.S
+26-521 files

LLVM/project e3cfcf4clang/include/clang/Basic DiagnosticCrossTUKinds.td, clang/include/clang/CrossTU CrossTranslationUnit.h

[clang][analyzer] Forward CTU-import failure conditions

Forward all CTU-import failures as diagnostics (remarks, warnings,
errors), except for `index_error_code::missing_definition` which has the
potential of generating too many diagnostics.

--
CPP-7804
DeltaFile
+127-37clang/lib/CrossTU/CrossTranslationUnit.cpp
+28-5clang/test/Analysis/ctu/diag/load-threshold.cpp
+26-1clang/include/clang/Basic/DiagnosticCrossTUKinds.td
+13-10clang/include/clang/CrossTU/CrossTranslationUnit.h
+19-0clang/test/Analysis/ctu/diag/invlist-wrong-format-late.cpp
+16-0clang/unittests/CrossTU/CrossTranslationUnitTest.cpp
+229-5314 files not shown
+248-7320 files

OpenBSD/ports RBMPAY5graphics/jpeg distinfo Makefile, graphics/jpeg/patches patch-CMakeLists_txt

   update to jpeg-3.1.4.1

   thanks to matthieu@ for armv7 and macppc tests (and Jan Stary who started
   on this too but matthieu beat him to it)
VersionDeltaFile
1.36+2-2graphics/jpeg/distinfo
1.89+1-1graphics/jpeg/Makefile
1.18+1-1graphics/jpeg/patches/patch-CMakeLists_txt
+4-43 files

FreeBSD/src 81114fflib/libc/amd64/string strrchr.S

libc/amd64/strrchr.S: rewrite and fix scalar implementation

The original scalar implementation of strrchr() had incorrect
logic that failed if the character searched for was the NUL
character.  It was also possibly affected by the issue fixed
in 3d8ef251a for strchrnul().

Rewrite the function with logic that actually works.  We defer
checking for the character until after we have checked for NUL.
When we encounter the final NUL byte, we mask out the characters
beyond the tail before checking for a match.

This bug only affects users running on amd64 with ARCHLEVEL=scalar
(cf. simd(7)).  The default configuration is not affected.

The bug was unfortunately not caught by the unit test inherited
from NetBSD.  An extended unit test catching the issue is proposed
in D56037.


    [9 lines not shown]
DeltaFile
+26-52lib/libc/amd64/string/strrchr.S
+26-521 files

LLVM/project 5e0a06bllvm/lib/CodeGen ExpandMemCmp.cpp, llvm/lib/Transforms/Scalar ExpandMemCmp.cpp MergeICmps.cpp

Move ExpandMemCmp and MergeIcmp to the middle end  (#77370)

Moving these into the middle-end pipeline will allow for additional
optimization of the expansion result, such as CSE of redundant loads
(c.f. https://godbolt.org/z/bEna4Md9r). For now, we conservatively place
the passes at the end of the middle-end pipeline, so we mostly don't
benefit from additional optimizations yet. The pipeline position will be
moved in a future change.

This builds on work done by legrosbuffle in
https://reviews.llvm.org/D60318.

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply at anthropic.com>
DeltaFile
+0-1,013llvm/lib/CodeGen/ExpandMemCmp.cpp
+963-0llvm/lib/Transforms/Scalar/ExpandMemCmp.cpp
+61-0llvm/test/Transforms/ExpandMemCmp/X86/sanitizer-skip.ll
+2-48llvm/lib/Transforms/Scalar/MergeICmps.cpp
+37-0llvm/test/Transforms/PhaseOrdering/X86/expand-memcmp-middle-end.ll
+16-16llvm/test/CodeGen/RISCV/memcmp-optsize.ll
+1,079-1,07770 files not shown
+1,236-1,35276 files

OpenBSD/src ctTky5fregress/usr.bin/ssh percent.sh

   adapt to username validity check change
VersionDeltaFile
1.23+3-3regress/usr.bin/ssh/percent.sh
+3-31 files

NetBSD/pkgsrc-wip 015f3bachromium COMMIT_MSG distinfo

chromium: update to 146.0.7680.177
DeltaFile
+46-19chromium/COMMIT_MSG
+9-9chromium/distinfo
+2-2chromium/Makefile
+57-303 files

LLVM/project a599a06libc/test/src/math CMakeLists.txt

[libc] Indentation consistency in CMake (#190120)

This PR just fixes the indentation/style for the whole CMake file for
consistency.
No other changes.
c698f55b0245ffbaae55c7f854fadba33df16e9d
DeltaFile
+40-40libc/test/src/math/CMakeLists.txt
+40-401 files

OpenBSD/src 8kBgXMRusr.bin/ssh version.h

   openssh-10.3
VersionDeltaFile
1.108+2-2usr.bin/ssh/version.h
+2-21 files

OpenBSD/src tQF0BsWusr.bin/ssh ssh.c

   move username validity check for usernames specified on the
   commandline to earlier in main(), specifically before some
   contexts where a username with shell characters might be
   expanded by a %u directive in ssh_config.

   We continue to recommend against using untrusted input on
   the SSH commandline. Mitigations like this are not 100%
   guarantees of safety because we can't control every
   combination of user shell and configuration where they are
   used.

   Reported by Florian Kohnhäuser
VersionDeltaFile
1.630+8-1usr.bin/ssh/ssh.c
+8-11 files

LLVM/project d1cee04clang/lib/CIR/Lowering/DirectToLLVM LowerToLLVM.cpp, clang/test/CIR/CodeGenCUDA address-spaces.cu

Poison attr lowering and llvm `__shared__` lowering.
DeltaFile
+13-5clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+4-0clang/test/CIR/CodeGenCUDA/address-spaces.cu
+17-52 files

OpenBSD/src DEXSQKzusr.bin/ssh sshconnect2.c auth2-pubkeyfile.c

   correctly match ECDSA signature algorithms against algorithm
   allowlists: HostKeyAlgorithms, PubkeyAcceptedAlgorithms and
   HostbasedAcceptedAlgorithms.

   Previously, if any ECDSA type (say "ecdsa-sha2-nistp521") was
   present in one of these lists, then all ECDSA algorithms would
   be permitted.

   Reported by Christos Papakonstantinou of Cantina and Spearbit.
VersionDeltaFile
1.385+18-10usr.bin/ssh/sshconnect2.c
1.8+15-11usr.bin/ssh/auth2-pubkeyfile.c
1.126+5-4usr.bin/ssh/auth2-pubkey.c
1.57+5-4usr.bin/ssh/auth2-hostbased.c
+43-294 files

NetBSD/pkgsrc-wip f4fbc30esbuild COMMIT_MSG distinfo

esbuild: update to 0.27.5
DeltaFile
+12-0esbuild/COMMIT_MSG
+3-3esbuild/distinfo
+1-2esbuild/Makefile
+16-53 files

LLVM/project 7ccd1cbclang/test/CodeGenCoroutines coro-suspend-cleanups.cpp, llvm/lib/Transforms/Coroutines CoroFrame.cpp

Reland "[CoroSplit] Erase trivially dead allocas after spilling (#189295)" (#190124)

The original PR contained a use-after-delete issue, which has been
resolved in #189521.

Reland #189295, which is reverted in #189311
DeltaFile
+3-0llvm/lib/Transforms/Coroutines/CoroFrame.cpp
+0-2clang/test/CodeGenCoroutines/coro-suspend-cleanups.cpp
+0-1llvm/test/Transforms/Coroutines/coro-await-suspend-lower.ll
+0-1llvm/test/Transforms/Coroutines/coro-await-suspend-lower-invoke.ll
+0-1llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-01.ll
+3-55 files

NetBSD/src bUueJASsys/arch/aarch64/include pte.h

   Add some stage-2 defines
VersionDeltaFile
1.15+20-1sys/arch/aarch64/include/pte.h
+20-11 files

FreeBSD/src 59e9a4clib/libc/gen posix_spawn.3

posix_spawn.3: fix formatting of xref

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+1-1lib/libc/gen/posix_spawn.3
+1-11 files

OpenBSD/src 04OjIgrusr.bin/ssh scp.c

   when downloading files as root in legacy (-O) mode and without the
   -p (preserve modes) flag set, clear setuid/setgid bits from
   downloaded files as one might expect.

   AFAIK this bug dates back to the original Berkeley rcp program.

   Reported by Christos Papakonstantinou of Cantina and Spearbit.
VersionDeltaFile
1.273+4-2usr.bin/ssh/scp.c
+4-21 files

OpenBSD/src i4JTEwsusr.bin/ssh mux.c

   add missing askpass check when using ControlMaster=ask/autoask
   and "ssh -O proxy ..."; reported by Michalis Vasileiadis
VersionDeltaFile
1.113+11-1usr.bin/ssh/mux.c
+11-11 files

OpenBSD/src gJLVbnVusr.bin/ssh servconf.c

   Fix possible sshd crash when sshd_config set MaxStartups to a
   value <10 using the single-argument form of MaxStartups (e.g.
   MaxStartups=3). This doesn't affect the three-argument form
   of the directive (e.g. MaxStartups 3:20:5).

   Patch from Peter Kaestle via bz3941
VersionDeltaFile
1.446+3-3usr.bin/ssh/servconf.c
+3-31 files

NetBSD/pkgsrc-wip e5ac4fe. Makefile, esbuild Makefile DESCR

Import www/esbuild
DeltaFile
+19-0esbuild/Makefile
+14-0esbuild/DESCR
+11-0esbuild/distinfo
+4-0esbuild/go-modules.mk
+2-0esbuild/PLIST
+1-0Makefile
+51-06 files

OpenBSD/src 9e7vmUZsys/dev/pci azalia.c

   match recent Intel parts
   ok deraadt@ mlarkin@
VersionDeltaFile
1.291+9-1sys/dev/pci/azalia.c
+9-11 files

LLVM/project 1662c20llvm/lib/Passes PassBuilderPipelines.cpp, llvm/lib/Transforms/Scalar LoopRotation.cpp

[Passes][LoopRotate] Move minsize handling fully into pass (#189956)

Make this dependent only on the minsize attribute and drop the pipeline
handling.

Rename the enable-loop-header-duplication option to
enable-loop-header-duplication-at-minsize to clarify that it controls
header duplication at minsize only (in other cases it is enabled by
default, independently of this option).
DeltaFile
+29-10llvm/test/Transforms/LoopRotate/oz-disable.ll
+6-20llvm/lib/Passes/PassBuilderPipelines.cpp
+15-5llvm/lib/Transforms/Scalar/LoopRotation.cpp
+8-9llvm/test/Transforms/PhaseOrdering/enable-loop-header-duplication-oz.ll
+58-444 files

LLVM/project 51fc1ffclang/lib/CIR/Dialect/Transforms/TargetLowering LowerModule.cpp TargetLoweringInfo.h, clang/lib/CIR/Dialect/Transforms/TargetLowering/Targets NVPTX.cpp

[CIR][NVPTX] NVPTX lowering info skeleton and target AS mapping
DeltaFile
+30-17clang/test/CIR/CodeGenCUDA/address-spaces.cu
+39-0clang/lib/CIR/Dialect/Transforms/TargetLowering/Targets/NVPTX.cpp
+3-0clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.cpp
+2-0clang/lib/CIR/Dialect/Transforms/TargetLowering/TargetLoweringInfo.h
+1-0clang/lib/CIR/Dialect/Transforms/TargetLowering/CMakeLists.txt
+75-175 files

LLVM/project 40e7fa6llvm/lib/Passes PassBuilderPipelines.cpp, llvm/lib/Transforms/IPO FunctionSpecialization.cpp

[Passes][FuncSpec] Move optsize/minsize handling into pass (#189952)

Instead of using the Os/Oz level during pass pipeline construction,
query the optsize/minsize attribute on the function to determine whether
specialization is allowed to take place. This ensures consistent
behavior for per-function attributes.

It's worth noting that FuncSpec *already* checks for minsize, but at the
call-site level.
DeltaFile
+39-0llvm/test/Transforms/FunctionSpecialization/function-specialization-optsize.ll
+3-8llvm/lib/Passes/PassBuilderPipelines.cpp
+3-0llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
+45-83 files

OpenBSD/src 1N5CR24sys/dev/pci dwiic_pci.c

   match on Panther Lake
   ok deraadt@ mlarkin@
VersionDeltaFile
1.34+13-1sys/dev/pci/dwiic_pci.c
+13-11 files