configd/templates - allow "strict" mode +TARGETS using the ! keyword.
Example line:
!at.cron:/etc/cron.d/at
In which case the target won't be generated when multiple modules are being flushed out (such as template_ctl.py \* being used on boot)
While here, also deprecate codecs (python warning)
for https://github.com/opnsense/plugins/pull/5521
atomic_store(9): Fix byte indexing on hash-locked architectures.
Fixes the easy part of:
PR kern/60393: hash-locked atomic_store_* is all kinds of busted
The hard part will require redoing these to just hash-lock the whole
store.
[AArch64] NFC: Factor out code from FP_TO_INT (SVE).
This just moves out some of the SVE lowering code from
LowerVectorFP_TO_INT into a separate function, so that we
can reuse that in LowerVectorFP_TO_INT_SAT.
[AArch64] NFCI: Simplify LowerVectorFP_TO_INT_SAT (part 2)
This simplifies the logic a bit more, such that the flow of the
lowering is as follows:
* Try to promote if necessary (fp16/bf16 types or src < dst)
* Try to handle natively (satwidth == srcwidth == dstwidth)
* Otherwise use min/max + truncate.
[AArch64] Simplify LowerVectorFP_TO_INT_SAT (part 1)
The lowering code tries to implement splitting by keeping two
source values SrcVal and SrcVal2 for the Lo/Hi part respectively.
This is a bit awkward, because SrcVal2 may not be set. It makes
more sense to generating new DAG nodes that will be lowered separately
by the lowering mechanism, which revisits the newly added (split sourceval)
nodes for lowering.