LLVM/project 0a76568llvm/lib/Target/WebAssembly WebAssemblyFixIrreducibleControlFlow.cpp WebAssemblyTargetMachine.cpp, llvm/test/CodeGen/WebAssembly pr184441.ll

[WebAssembly] Reapply "[WebAssembly] Incorporate SCCs into WebAssemblyFixIrreducibleControlFlow" (#181755) (#184441)

Re-application of #181755.

Includes fixes to issues found after the original's merge.
DeltaFile
+153-136llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp
+21-0llvm/test/CodeGen/WebAssembly/pr184441.ll
+4-0llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
+178-1363 files

LLVM/project 9145a74lldb/examples/python formatter_bytecode.py

[lldb] Use "assemble" instead of "compile" in formatter_bytecode.py (#184714)

Replace "compile" with "assemble" in formatter_bytecode. This is in
preparation for the addition of a Python to formatter bytecode compiler.
It will be more clear to have one meaning for "compile".
DeltaFile
+34-34lldb/examples/python/formatter_bytecode.py
+34-341 files

LLVM/project fea8a69clang/test/OpenMP loop_collapse_codegen.cpp, llvm/test/CodeGen/AArch64 clmul-fixed.ll

Rebase, update newly added test with PGO info

Created using spr 1.3.7
DeltaFile
+6,520-0llvm/test/CodeGen/X86/bit-manip-i512.ll
+3,707-46llvm/test/CodeGen/AArch64/clmul-fixed.ll
+3,441-0llvm/test/MC/AMDGPU/gfx13_asm_vflat.s
+3,257-0llvm/test/CodeGen/X86/bit-manip-i256.ll
+857-0clang/test/OpenMP/loop_collapse_codegen.cpp
+706-0llvm/test/Transforms/LoopVectorize/float-induction.ll
+18,488-46650 files not shown
+32,830-5,669656 files

LLVM/project 0e1bef8llvm/lib/Target/Hexagon Hexagon.td, llvm/test/CodeGen/Hexagon v81-early-arch-features.ll

[Hexagon] Add missing early architecture features to V81 processor (#183499)

V81 was missing ArchV5, ArchV55, ArchV60, and ArchV62 in its feature
list, causing instructions requiring these architecture versions to fail
during compilation.

(cherry picked from commit 6f736e2cd9933aed1c8b72f2fe370f7d60bd3709)
DeltaFile
+16-0llvm/test/CodeGen/Hexagon/v81-early-arch-features.ll
+2-2llvm/lib/Target/Hexagon/Hexagon.td
+18-22 files

FreeBSD/src 27cfa8elib/libc/quad Symbol.map

libc/quad: narrow list of symbols exposed for 32-bit arm

lld doesn't notice, but ld.bfd complains.

Reviewed by:    brooks
Differential Revision:  https://reviews.freebsd.org/D55657
DeltaFile
+14-0lib/libc/quad/Symbol.map
+14-01 files

FreeBSD/src 54bf594lib/libc/quad Symbol.map

libc/quad: Switch to per-arch lists of symbols

This more closely mirrors libc/quad/Makefile.inc and is easier to
read.

Reviewed by:    brooks
Differential Revision:  https://reviews.freebsd.org/D55658
DeltaFile
+23-28lib/libc/quad/Symbol.map
+23-281 files

FreeBSD/src 1b77f6eshare/mk bsd.linker.mk

bsd.linker.mk: Document ifunc, ifunc-noplt, riscv-relaxations features

Reviewed by:    emaste
Differential Revision:  https://reviews.freebsd.org/D55655
DeltaFile
+3-0share/mk/bsd.linker.mk
+3-01 files

FreeBSD/src cf92fa3share/mk bsd.linker.mk

bsd.linker.mk: Sort list of linker features

Reindent the features as well to be friendly to long feature names.

Reviewed by:    emaste
Differential Revision:  https://reviews.freebsd.org/D55656
DeltaFile
+8-8share/mk/bsd.linker.mk
+8-81 files

FreeBSD/src d19f2afsys/dev/acpica acpi.c

acpi: Don't attach a "wake" sysctl node to devices without the ACPI flags IVAR

Not all bus drivers for ACPI-aware devices implement the ACPI flags
IVAR used by the acpi_wake_set_sysctl handler.  In some cases this may
be a feature as some new-bus devices share the same ACPI handle (e.g.
a pcibX device and its child pciY device) which can lead to confusing
results (e.g. setting the sysctl on pciY changes the behavior of the
parent pcibX device, but the "wake" sysctl for pcibX won't reflect the
new behavior, or reflect the device's state).

Reviewed by:    obiwac, ngie, imp
Differential Revision:  https://reviews.freebsd.org/D55562
DeltaFile
+1-1sys/dev/acpica/acpi.c
+1-11 files

LLVM/project 0bca18dclang/lib/CIR/CodeGen CIRGenExprConstant.cpp

[CIR][NFC] Add 'matrix' type to CIRGenExprConstant.cpp switch (#184852)

This just adds this as an NYI, but this will suppress the Wswitch
warning.
DeltaFile
+3-0clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
+3-01 files

LLVM/project 7ddc1bblld/ELF/Arch Hexagon.cpp, lld/test/ELF hexagon-duplex-relocs.s

[lld][Hexagon] Fix findMaskR8 missing duplex support (#183936)

findMaskR8() lacked an isDuplex() check, unlike findMaskR6(),
findMaskR11(), and findMaskR16() which all handle duplex instructions.

When the assembler generates R_HEX_8_X on a duplex SA1_addi instruction
(e.g. `{ r0 = add(r0, ##target); memw(r1+#0) = r2 }`), the wrong mask
0x00001fe0 placed relocation bits at [12:5] instead of [25:20],
corrupting the low sub-instruction (e.g. memw became memb).

Add the isDuplex() check returning 0x03f00000, and add a comprehensive
test covering all duplex instruction x relocation type combinations
across findMaskR6, findMaskR8, findMaskR11, and findMaskR16.

(cherry picked from commit 9105d9c24949d8cf9b740cb874027351e7230e70)
DeltaFile
+40-0lld/test/ELF/hexagon-duplex-relocs.s
+2-0lld/ELF/Arch/Hexagon.cpp
+42-02 files

NetBSD/src ahoi36metc getramdisksize

   Fix incorrect syntax for some shells

   In a world long vanished, the ascii char set did not have the |
   character (0x7c) as a standard member, and could not be relied
   upon existing.   In systems only found today in archaeological digs,
   that was handled by making '^' be the sh symbol for a pipe.

   That meant that the regular expression notation for negating a
   character class ([^stuff]) couldn't be used in shell patterns,
   and so ! was used there instead of the ^.   The ^ did not bother
   use in REs as those almost always need to be quoted when included
   in a shell command anyway - but quoting of shell patterns would
   defeat their use as a pattern, so couldn't be used there.

   In more modern times, this excuse for the difference has long gone,
   ^ isn't the pipe symbol in any shell that is likely to be encountered,
   and so most shells allow either ^ or ! to represent negation of a
   character class - ^ for compat with REs, and ! for compat with old
   scripts.

    [6 lines not shown]
VersionDeltaFile
1.4+1-1etc/getramdisksize
+1-11 files

FreeNAS/freenas e96e4c3src/middlewared/middlewared/plugins/filesystem_ acl.py

Prevent setting recurse without traverse
DeltaFile
+6-0src/middlewared/middlewared/plugins/filesystem_/acl.py
+6-01 files

HardenedBSD/src c054a05contrib/tzdata NEWS europe, lib/libc/stdlib system.c

Merge branch 'freebsd/15-stable/main' into hardened/15-stable/main
DeltaFile
+189-102usr.sbin/lpr/lpd/recvjob.c
+174-0lib/libc/tests/stdlib/system_test.c
+76-46lib/libc/stdlib/system.c
+98-1contrib/tzdata/NEWS
+68-6contrib/tzdata/europe
+16-32contrib/tzdata/Makefile
+621-18739 files not shown
+777-30745 files

FreeBSD/ports 2b43525www/gitea distinfo Makefile

www/gitea: Update to 1.25.4

New maintainer

PR:     292466
Approved-by:    maintainer (Stefan Bethke)
DeltaFile
+3-3www/gitea/distinfo
+2-3www/gitea/Makefile
+5-62 files

HardenedBSD/ports d198144cad/veryl distinfo, net-im/flare distinfo Makefile.crates

Merge branch 'freebsd/main' into hardenedbsd/main
DeltaFile
+313-275net-im/flare/distinfo
+56-390x11/plasma6-plasma-workspace/pkg-plist
+227-181cad/veryl/distinfo
+169-157sysutils/rustic/distinfo
+155-136net-im/flare/Makefile.crates
+245-0sysutils/plasma6-ksystemstats/files/patch-network
+1,165-1,139579 files not shown
+3,939-3,705585 files

LLVM/project 3ed12ebllvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV rvp-ext-rv64.ll rvp-ext-rv32.ll

[RISCV][P-ext] Fix cannot select error for shlsat with i8 vector argument. (#184839)

We don't have instructions for an i8 sshlat.
DeltaFile
+35-7llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
+23-4llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
+4-2llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+62-133 files

LLVM/project f7560e1llvm/test/Transforms/LoopVectorize multiple-argmin-argmax.ll

[LV] Add tests with loops with multiple argmin/argmax.

Add additional tests with multiple argmin/argmax reductions for
https://github.com/llvm/llvm-project/issues/184729.
DeltaFile
+595-0llvm/test/Transforms/LoopVectorize/multiple-argmin-argmax.ll
+595-01 files

LLVM/project b7ed29dllvm/test/Transforms/SLPVectorizer/X86 expected-prof-consecutive-access.ll

[SLP][NFC]Add a test with a loop with profiling info, NFC
DeltaFile
+66-0llvm/test/Transforms/SLPVectorizer/X86/expected-prof-consecutive-access.ll
+66-01 files

LLVM/project 6811a83clang/include/clang/Basic DiagnosticSemaKinds.td, clang/lib/AST ASTContext.cpp

[Clang] Ensure child classes export inherited constructors from base classes (#182706)

Inherited constructors in `dllexport` classes are now exported for ABI-compatible cases, 
matching MSVC behavior. Constructors with variadic arguments or callee-cleanup 
parameters are not yet supported and produce a warning.

This aims to partially resolve https://github.com/llvm/llvm-project/issues/162640.

Assisted by : Cursor // Claude Opus 4.6
DeltaFile
+243-0clang/test/CodeGenCXX/dllexport-inherited-ctor.cpp
+61-4clang/lib/Sema/SemaDeclCXX.cpp
+25-0clang/test/SemaCXX/dllexport.cpp
+13-4clang/lib/AST/ASTContext.cpp
+15-0clang/lib/CodeGen/ModuleBuilder.cpp
+5-0clang/include/clang/Basic/DiagnosticSemaKinds.td
+362-81 files not shown
+365-87 files

FreeBSD/doc d7b972cwebsite/content/en/releases/15.0R relnotes.adoc

15.0/relnotes: document allow.unprivileged_parent_tampering

Reviewed by:    ziaee
Differential Revision:  https://reviews.freebsd.org/D54956
DeltaFile
+4-0website/content/en/releases/15.0R/relnotes.adoc
+4-01 files

LLVM/project da5f60cflang/lib/Semantics check-omp-structure.cpp

format
DeltaFile
+5-4flang/lib/Semantics/check-omp-structure.cpp
+5-41 files

LLVM/project b989713lldb/source/Host/windows PseudoConsole.cpp

[lldb][windows] remove sleep before closing ConPTY (#183539)

DeltaFile
+0-4lldb/source/Host/windows/PseudoConsole.cpp
+0-41 files

LLVM/project 6807b61lldb/test/API/commands/watchpoints/watchpoint_commands/command watchpoint_command.py

Fix a bug in the watchpoint callback - in one case we weren't
returning anything from the callback.  Fixing this on the off
chance that is what is causing the linux-only failure in this test
after PR:

https://github.com/llvm/llvm-project/pull/184272
DeltaFile
+1-0lldb/test/API/commands/watchpoints/watchpoint_commands/command/watchpoint_command.py
+1-01 files

FreeBSD/src 6feb16bsys/kern subr_witness.c

witness: report a thread that can't sleep in WITNESS_WARN

Although this is not related to locking, but seems to be the right
place to catch violators, given that WITNESS_WARN is already used
widely in the kernel.

Reviewed by:            kib, markj
Differential Revision:  https://reviews.freebsd.org/D55316
DeltaFile
+9-0sys/kern/subr_witness.c
+9-01 files

HardenedBSD/src 6feb16bsys/kern subr_witness.c

witness: report a thread that can't sleep in WITNESS_WARN

Although this is not related to locking, but seems to be the right
place to catch violators, given that WITNESS_WARN is already used
widely in the kernel.

Reviewed by:            kib, markj
Differential Revision:  https://reviews.freebsd.org/D55316
DeltaFile
+9-0sys/kern/subr_witness.c
+9-01 files

LLVM/project e408392clang/lib/Sema SemaLambda.cpp, clang/test/Modules pr178893.cppm

[clang] Don't use `VarDecl` of local variables as `ManglingContextDecl` for lambdas (#179035)

Currently, in a C++20 modules context, a `VarDecl` of a local variable
can wrongly end up as a `ManglingContextDecl` for a lambda.

Fix this by removing `ContextKind::NonInlineInModulePurview` in
`Sema::getCurrentMangleNumberContext` and add
`IsExternallyVisibleInModulePurview` checks in the appropriate places:

- For externally visible functions defined in a module purview, add a
check to `isInInlineFunction`, renaming it to
`IsInFunctionThatRequiresMangling`
- For externally visible variables defined in a module purview, add a
new `ContextKind::ExternallyVisibleVariableInModulePurview` and an
appropriate check to the `VarDecl` case

Fixes #178893

---------

    [4 lines not shown]
DeltaFile
+46-33clang/lib/Sema/SemaLambda.cpp
+29-0clang/test/Modules/pr178893.cppm
+75-332 files

LLVM/project 9d1b5d8clang/lib/Sema SemaLambda.cpp, clang/test/Modules pr177385.cppm

[C++20] [Modules] Set ManglingContextDecl when we need to mangle a lambda but it's nullptr (#177899)

Close https://github.com/llvm/llvm-project/issues/177385

The root cause of the problem is, when we decide to mangle a lamdba in a
module interface while the ManglingContextDecl is nullptr, we didn't
update ManglingContextDecl. So that the following use of
ManglingContextDecl is an invalid value.

(cherry picked from commit 772b15b3be153b1d2df910057af17926ea227243)
DeltaFile
+165-0clang/test/Modules/pr177385.cppm
+12-11clang/lib/Sema/SemaLambda.cpp
+177-112 files

LLVM/project 571e578clang-tools-extra/clang-doc MDParser.cpp MDParser.h, clang-tools-extra/unittests/clang-doc MDParserTest.cpp CMakeLists.txt

[clang-doc] markdown parser
DeltaFile
+255-0clang-tools-extra/clang-doc/MDParser.cpp
+224-0clang-tools-extra/unittests/clang-doc/MDParserTest.cpp
+191-0clang-tools-extra/clang-doc/MDParser.h
+1-0clang-tools-extra/clang-doc/CMakeLists.txt
+1-0clang-tools-extra/clang-doc/Representation.h
+1-0clang-tools-extra/unittests/clang-doc/CMakeLists.txt
+673-06 files

LLVM/project dde5e79flang/include/flang/Parser openmp-utils.h, flang/lib/Lower/OpenMP OpenMP.cpp

[flang][OpenMP] Utilities to get uppercase directive/clause names

It is a convention to use uppercase names of directives and clauses in
diagnostic messages, but getting such names is somewhat cumbersome:
```
parser::ToUpperCaseLetters(llvm::omp::getOpenMPDirectiveName(dirId));
parser::ToUpperCaseLetters(llvm::omp::getOpenMPClauseName(clauseId));
```

Implement `GetUpperName` (overloaded for clauses and directives) to
shorten it to
```
GetUpperName(dirId, version);
GetUpperName(clauseId, version);
```

This patch replaces existing instances of this pattern, adding the
use of OpenMP version where it was previously missing.
DeltaFile
+76-76flang/lib/Semantics/check-omp-structure.cpp
+8-14flang/lib/Semantics/resolve-directives.cpp
+12-0flang/lib/Parser/openmp-utils.cpp
+5-3flang/lib/Lower/OpenMP/OpenMP.cpp
+2-3flang/lib/Semantics/check-omp-loop.cpp
+3-0flang/include/flang/Parser/openmp-utils.h
+106-966 files