OPNSense/core a425d7asrc/opnsense/mvc/app/views/OPNsense/Diagnostics fw_log.volt, src/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

Firewall: use text-warning and yellow as the color for match rules
DeltaFile
+3-3src/opnsense/www/js/widgets/Firewall.js
+4-2src/opnsense/mvc/app/views/OPNsense/Diagnostics/fw_log.volt
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+8-63 files

HardenedBSD/src dfb7120share/man/man4 ix.4, sys/dev/ixgbe if_ix.c

Merge remote-tracking branch 'rad/hardened/current/master' into hardened/current/pledge
DeltaFile
+212-153sys/dev/ixgbe/if_ix.c
+107-0usr.sbin/pw/tests/pw_unit_test.c
+35-0usr.sbin/pw/tests/pw_useradd_test.sh
+12-8sys/kern/kern_umtx.c
+19-1share/man/man4/ix.4
+20-0usr.sbin/pw/tests/pw_test.sh
+405-16210 files not shown
+442-18316 files

HardenedBSD/src 14750c2share/man/man4 ix.4, sys/dev/ixgbe if_ix.c

Merge branch 'freebsd/current/main' into hardened/current/master
DeltaFile
+212-153sys/dev/ixgbe/if_ix.c
+107-0usr.sbin/pw/tests/pw_unit_test.c
+35-0usr.sbin/pw/tests/pw_useradd_test.sh
+12-8sys/kern/kern_umtx.c
+19-1share/man/man4/ix.4
+20-0usr.sbin/pw/tests/pw_test.sh
+405-16210 files not shown
+442-18316 files

LLVM/project 5780758mlir/include/mlir/Dialect/Arith/IR ArithOps.td, mlir/lib/Dialect/Arith/IR ArithOps.cpp

[mlir][arith] Fold scaling_extf and scaling_truncf with constant operands (#215123)

Add constant folders for the two MXFP scaling casts, mirroring the
expansion
in `ExpandOps.cpp`:

```
scaling_extf(in, scale)   -> mulf(extf(in), extf(scale))
scaling_truncf(in, scale) -> truncf(in / extf(scale))
```

Note the asymmetry the expansion already has: `scaling_extf` widens the
scale
to the result type, `scaling_truncf` to the type of `in`.

These were the only two ops in the dialect with neither a folder nor a
canonicalizer, so `-canonicalize` left them alone even with both
operands
constant, while `-arith-expand -canonicalize` folded them away.

    [32 lines not shown]
DeltaFile
+145-0mlir/test/Dialect/Arith/canonicalize.mlir
+116-0mlir/lib/Dialect/Arith/IR/ArithOps.cpp
+2-0mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
+263-03 files

LLVM/project d812b4allvm/test/Transforms/SLPVectorizer/X86 horizontal-fadd-with-sub.ll

[SLP][NFC]Add extra test for flattened fneg/fadd chains, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/221208
DeltaFile
+914-0llvm/test/Transforms/SLPVectorizer/X86/horizontal-fadd-with-sub.ll
+914-01 files

LLVM/project e96c3fcclang/lib/CIR/CodeGen TargetInfo.h CIRGenFunctionInfo.h, clang/lib/CIR/CodeGen/Targets SPIRV.cpp

[CIR][SPIR-V] Set spir_kernel calling convention for AMDGCN-flavored HIP kernels (#214246)

CIR emitted no calling convention for HIP `__global__` kernels on the
`spirv64-amd-amdhsa` target, unlike generic SPIR-V, which already gets
`spirv_kernel` CC
DeltaFile
+23-9clang/lib/CIR/CodeGen/CIRGenCall.cpp
+7-17clang/lib/CIR/CodeGen/Targets/SPIRV.cpp
+23-0clang/test/CIR/CodeGenHIP/amdgcnspirv-kernel.hip
+19-3clang/lib/CIR/CodeGen/CIRGenTypes.cpp
+19-2clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
+6-6clang/lib/CIR/CodeGen/TargetInfo.h
+97-375 files not shown
+113-4411 files

FreeBSD/ports 60b408bdeskutils/mindforger Makefile

deskutils/mindforger: Schedule for removal

Depends on deprecated Qt5 WebEngine

PR:             296230
DeltaFile
+4-1deskutils/mindforger/Makefile
+4-11 files

OPNSense/core 17db3d8src/etc/inc interfaces.inc

foo
DeltaFile
+1-1src/etc/inc/interfaces.inc
+1-11 files

FreeNAS/freenas 7db32cb.github/workflows mypy.yml, src/middlewared/middlewared/plugins/truenas_s3 grants.py config.py

Check the S3 plugin under mypy strict

Nothing checked the plugin's annotations, and it showed. The grant
helpers took Iterable of GrantRow or Mapping of str to Any, a union
that accepts whatever the Mapping accepts, so the TypedDict added
nothing. It now takes GrantRow alone. The rows a datastore query hands
over are Any, which is assignable to that, so the TypedDict is what
stops the Any at the boundary rather than a cast the callers would
have to write.

The plugin joins the mypy workflow's list and passes strict. What that
took is small. Two list variables in the listen text needed a type.
Values read off middleware.call are Any and were returned as bool or
int or None, so they land in an annotated name first. The port
validator helper is untyped and only forwards to port.validate_port,
so the plugin calls that directly. The delegates read the config as
the entry it is rather than dumping it, and the listen delegate dumps
each listener itself. audited_bucket_names queries through
middleware.call, where the result is typed as the list it is, instead

    [5 lines not shown]
DeltaFile
+34-19src/middlewared/middlewared/plugins/truenas_s3/__init__.py
+13-7src/middlewared/middlewared/plugins/truenas_s3/bucket_crud.py
+9-6src/middlewared/middlewared/plugins/truenas_s3/config.py
+6-6src/middlewared/middlewared/plugins/truenas_s3/grants.py
+1-0.github/workflows/mypy.yml
+63-385 files

OPNSense/core a1d7bb4src/etc/inc interfaces.inc

foo
DeltaFile
+1-1src/etc/inc/interfaces.inc
+1-11 files

LLVM/project 715831cclang/lib/Sema SemaCoroutine.cpp, clang/test/SemaCXX coreturn.cpp

[clang] Fix lost lambda capture in dependent co_return operand (#220234)

09231ed02384 ("[clang] Delay dependent co_return promise calls") made
Sema::BuildCoreturnStmt return early for a type-dependent operand,
before reaching the ActOnFinishFullExpr() call that every other path
performs.

Inside a lambda, a reference to a variable of an enclosing function is
not captured immediately: DoMarkPotentialCapture() only records it via
LambdaScopeInfo::addPotentialCapture(), and relies on
ActOnFinishFullExpr() to turn it into an actual capture and odr-use.
Skipping that on the dependent path silently drops the pending capture,
so a variable mentioned only in the operand of a dependent co_return
never gets a capture field. When the generic lambda's call operator is
later instantiated from another context, Sema tries to capture the
variable again and rejects valid code with "reference to local variable
'p' declared in enclosing function".

Finish the full-expression on the dependent path as well.

    [3 lines not shown]
DeltaFile
+53-0clang/test/SemaCXX/coreturn.cpp
+8-2clang/lib/Sema/SemaCoroutine.cpp
+61-22 files

OPNSense/core d4436dasrc/etc/inc interfaces.inc

typo
DeltaFile
+1-1src/etc/inc/interfaces.inc
+1-11 files

OPNSense/core 190bda6src/etc/inc config.inc interfaces.inc

interfaces: intermediate step merge unassigned
DeltaFile
+27-32src/etc/inc/interfaces.inc
+1-0src/etc/inc/config.inc
+28-322 files

LLVM/project e93322bllvm/utils/gn/secondary/libcxx/include BUILD.gn

[gn build] Port e6734a41bb41 (#221206)
DeltaFile
+1-0llvm/utils/gn/secondary/libcxx/include/BUILD.gn
+1-01 files

LLVM/project 40683b3llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/modernize BUILD.gn

[gn build] Port deb7382b1b5b (#221205)
DeltaFile
+1-0llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/modernize/BUILD.gn
+1-01 files

LLVM/project 60d9633llvm/utils/gn/secondary/llvm/lib/Passes BUILD.gn

[gn build] Port dca328efcdee (#221204)
DeltaFile
+1-0llvm/utils/gn/secondary/llvm/lib/Passes/BUILD.gn
+1-01 files

LLVM/project 1221e77llvm/utils/gn/secondary/libcxx/include BUILD.gn

[gn build] Port 89ebea3545ac (#221203)
DeltaFile
+1-0llvm/utils/gn/secondary/libcxx/include/BUILD.gn
+1-01 files

LLVM/project 3a3cf0dllvm/utils/gn/secondary/llvm/unittests/Target/AMDGPU BUILD.gn

[gn build] Port 543ac0371f32 (#221202)
DeltaFile
+1-0llvm/utils/gn/secondary/llvm/unittests/Target/AMDGPU/BUILD.gn
+1-01 files

LLVM/project a113891llvm/utils/gn/secondary/libcxx/include BUILD.gn

[gn build] Port 4746e698304b (#221201)
DeltaFile
+2-1llvm/utils/gn/secondary/libcxx/include/BUILD.gn
+2-11 files

FreeBSD/ports d41a573misc/qt5-examples Makefile pkg-plist

misc/qt5-examples: Drop deprecated Qt5 WebEngine

PR:             296230
DeltaFile
+0-332misc/qt5-examples/pkg-plist
+2-1misc/qt5-examples/Makefile
+2-3332 files

FreeNAS/freenas b62d143src/middlewared/middlewared/api/v26_0_0 s3.py, src/middlewared/middlewared/plugins/truenas_s3 bucket_crud.py config.py

Type the grant helpers and validate the config entry's rows once

The grant helpers passed dicts of Any around, returned a two key
lookup table addressed by string, and took a list of Any to validate.
That looseness hid a bug. The service's config entry is constructed
rather than validated, so the global grants it carries are the stored
dicts, and an update that touched any other field handed those dicts
to validate_grants, which read them as models and raised
AttributeError. Setting a global grant and then changing the log
level was enough.

The rows are now made models in one place, the config extend, so
every reader past it holds S3Listener and S3GrantEntry and the
re-validations in do_update and render_data are gone. The helpers
take and return the API models, with two frozen keyword-only
dataclasses for what is not one: Principals for the ids a grant list
names and PrincipalNames for their resolved names, which owns the
name-or-number fallback that was written three times. A TypedDict
names the stored row shape at the boundary. The render dataclasses

    [6 lines not shown]
DeltaFile
+82-34src/middlewared/middlewared/plugins/truenas_s3/grants.py
+19-18src/middlewared/middlewared/plugins/truenas_s3/config.py
+9-9tests/api2/test_s3_config.py
+7-10src/middlewared/middlewared/plugins/truenas_s3/bucket_crud.py
+2-0src/middlewared/middlewared/api/v26_0_0/s3.py
+119-715 files

LLVM/project cea4f92libc/shared/math fdimf128.h, libc/src/__support/math fdimf128.h

[libc] Make `fdimf128` use the emulated float128 type (#217567)
DeltaFile
+4-7libc/src/__support/math/fdimf128.h
+0-6libc/shared/math/fdimf128.h
+5-1libc/src/math/generic/fdimf128.cpp
+5-0libc/test/src/math/smoke/fdimf128_test.cpp
+5-0libc/src/math/fdimf128.h
+2-2libc/test/shared/shared_math_constexpr_test.cpp
+21-1619 files not shown
+45-2825 files

LLVM/project 2a54cfdlibc/shared/math fmaximum_mag_numf128.h, libc/src/__support/math fminimum_mag_numf128.h fmaximum_mag_numf128.h

[libc] Make fmaximum_mag_num/fminimum_mag_num functions use the emulated float128 type (#217549)
DeltaFile
+7-6libc/test/shared/shared_math_constexpr_test.cpp
+4-7libc/src/__support/math/fminimum_mag_numf128.h
+4-7libc/src/__support/math/fmaximum_mag_numf128.h
+4-4libc/test/shared/shared_math_test.cpp
+6-2utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+0-6libc/shared/math/fmaximum_mag_numf128.h
+25-3226 files not shown
+95-6032 files

LLVM/project f26bfb4clang/lib/CIR/CodeGen CIRGenBuiltinNVPTX.cpp, clang/test/CIR/CodeGenCUDA builtins-nvvm-ldu.cu builtins-nvvm-ldu-ldg.cu

[CIR][CUDA] Add support for __nvvm_ldg builtins (#213178)

Adds CIRGen for the NVVM ldg builtins, which perform loads through the
read-only data cache.

These lower to the corresponding `llvm.nvvm.ldg.global.*` intrinsic.
DeltaFile
+351-0clang/test/CIR/CodeGenCUDA/builtins-nvvm-ldu-ldg.cu
+0-155clang/test/CIR/CodeGenCUDA/builtins-nvvm-ldu.cu
+21-4clang/lib/CIR/CodeGen/CIRGenBuiltinNVPTX.cpp
+372-1593 files

LLVM/project f02d128clang/lib/CIR/CodeGen CIRGenBuiltinAMDGPU.cpp, clang/test/CIR/CodeGenHIP builtins-amdgcn-wave64.hip builtins-amdgcn-wave32.hip

[CIR][AMDGPU] Add support for AMDGCN cmp and ballot builtins (#198135)

Adds CIRGen for the AMDGCN comparison and ballot builtins:

 -  __builtin_amdgcn_fcmp
 -  __builtin_amdgcn_fcmpf
  - __builtin_amdgcn_sicmp
 -  __builtin_amdgcn_sicmpl
 -  __builtin_amdgcn_uicmp
 -  __builtin_amdgcn_uicmpl
  - __builtin_amdgcn_ballot_w32
  - __builtin_amdgcn_ballot_w64

The cmp builtins are deprecated in favor of ballot_w32 and ballot_w64,
but classic CodeGen still supports them, so CIRGen matches it for
parity. The deprecation is a Sema-level warning and does not affect the
emitted IR.

@ranapratap55 Let me know if you would like a comment noting the
deprecation, either in the implementation or the tests.
DeltaFile
+57-16clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
+60-0clang/test/CIR/CodeGenHIP/builtins-amdgcn.hip
+28-0clang/test/CIR/CodeGenHIP/builtins-amdgcn-wave64.hip
+28-0clang/test/CIR/CodeGenHIP/builtins-amdgcn-wave32.hip
+173-164 files

LLVM/project ba4cf23clang/include/clang/CIR/Dialect/IR CIRAttrs.td, clang/test/CIR/CodeGen callsite-inline-attributes.cpp

[CIR] Drop the redundant suffix from the inline kind mnemonic

inline_kind was the one CIR enum attribute mnemonic still repeating what its
C++ enum class name says. The attribute now spells
`#cir.inline<always_inline>`. The operation argument keeps the name
inline_kind, since that is the accessor name, so the printed form reads
`inline_kind = #cir.inline<always_inline>`.

The enum's summary also becomes "inline kind" rather than the camelCase
"inlineKind", which is what generated docs show now that CIR_InlineKindAttr
no longer overrides it.

25 CHECK lines change across four test files. Nine are in an
aarch64-registered-target test, unsupported in an X86-only build, but the
substitution matches the two CIR tests that do run.
DeltaFile
+9-9clang/test/CodeGen/AArch64/sme-inline-callees-streaming-attrs.c
+9-9clang/test/CIR/CodeGen/callsite-inline-attributes.cpp
+6-6clang/test/CIR/IR/inline-attrs.cir
+2-3clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
+2-2clang/test/CIR/IR/invalid-call.cir
+28-295 files

LLVM/project 56faf32clang/include/clang/CIR/Dialect/IR CIRCUDAAttrs.td CIRTypes.td

[CIR] Use the modern enum case classes

The `I32EnumAttrCase` family carries an `Attr` half, and an `IntegerAttr`
predicate with it, that a CIR enum has no use for now that the enums derive
from `EnumInfo`. Upstream says of those forms that they "are not needed when
using the newer `EnumCase` form".

Rename all 198 of them to `I32EnumCase`, `I32BitEnumCaseNone`,
`I32BitEnumCaseBit` and `BitEnumCaseGroup`. The group class drops its width
prefix because the modern spelling takes the width from its cases.

NFC, mechanical.
DeltaFile
+140-140clang/include/clang/CIR/Dialect/IR/CIROps.td
+43-43clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
+8-8clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
+4-4clang/include/clang/CIR/Dialect/IR/CIRTypes.td
+3-3clang/include/clang/CIR/Dialect/IR/CIRCUDAAttrs.td
+198-1985 files

LLVM/project 7ec2e54clang/include/clang/CIR/Dialect/IR CIREnumAttr.td CIROps.td

[CIR] Drop dead ceremony around the CIR enum attributes

Five things that no longer earn their place in the CIR enum attribute
machinery.

CIR_CleanupKindAttr carried three. Its cppClassName restated the default
AttrDef already derives. Its skipDefaultBuilders plus hand-written
AttrBuilder existed only to default $value to CleanupKind::All, which no
caller relies on, so the generated builders stayed suppressed for nothing.
And its summary and description restated the name, overriding the enum's own
"cleanup kind" that EnumAttr would otherwise inherit. The isNormal, isEH and
isNormalAndEH helpers stay.

CIR_TLSModelAttr's summary restated its name the same way, so only that goes.
CIR_DefaultValuedEnumParameter has never had a user.

NFC.
DeltaFile
+0-16clang/include/clang/CIR/Dialect/IR/CIROps.td
+0-5clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
+0-212 files

LLVM/project 53dfd24clang/utils/TableGen CIRLoweringEmitter.cpp

[CIR] Derive lowering attr names from cppClassName, not the def name

CIRLoweringEmitter built its CXX_ABI_ALWAYS_LEGAL_ATTRS entries with
GetOpCppClassName, which splits the TableGen def name at the first
underscore. That works only while every def is named CIR_<CppClassName>Attr.
When one is not, the emitter writes an `isa<>` for a class that does not
exist, and the failure lands as a compile error in generated code.

Attributes carry the authoritative name in cppClassName, which
GenerateAttrToValueVisitor was already reading. Factor that out as
GetAttrCppClassRef and use it for both attribute paths. GetOpCppClassName
stays for operations.

NFC, and checkable. No CIR attribute overrides cppClassName, so the generated
CIRLowering.inc is byte-identical.
DeltaFile
+16-10clang/utils/TableGen/CIRLoweringEmitter.cpp
+16-101 files

LLVM/project 1566877clang/include/clang/CIR/Dialect/IR CIRTypes.td CIRCUDAAttrs.td, clang/test/CIR/IR invalid-lang-attr.cir

[CIR] Move the CIR enums off the legacy EnumAttrInfo hierarchy

MLIR has two enum hierarchies. `EnumAttrInfo` doubles as an `IntegerAttr`
constraint, so every CIR enum had to clear `genSpecializedAttr` to say it did
not want one. `EnumInfo` describes a C++ enum and nothing more.

Derive the CIR bases from `I32Enum`, `I64Enum` and `I32BitEnum`, and widen
`CIR_EnumAttr` to the `EnumInfo` that upstream `EnumAttr` already takes. The
flag no longer exists to clear. `FPClassTestEnum` gets unquoted printing from
`BitEnumBase` rather than overriding `printBitEnumQuoted`, and
`CIR_KnownFuncKind` drops a `parameterPrinter` the generated `operator<<`
now covers, still spelling `#cir.func_identity<"std::find">`.

AMDGPU wraps an `I32Enum` in an `EnumAttr` with this same bracketed format.
Parsing moves to the generated `FieldParser`, whose diagnostic names the
accepted spellings, so two `expected-error` lines change. Generated attribute
code drops 16 KB as 28 inlined parsers collapse into it.
DeltaFile
+33-73clang/include/clang/CIR/Dialect/IR/CIROps.td
+23-53clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
+13-9clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
+2-4clang/include/clang/CIR/Dialect/IR/CIRCUDAAttrs.td
+1-3clang/include/clang/CIR/Dialect/IR/CIRTypes.td
+1-1clang/test/CIR/IR/invalid-lang-attr.cir
+73-1431 files not shown
+74-1447 files