[mlir] Deterministic containers in BytecodeWriter (#187819)
Iteration over use lists in writeUseListOrders is non-deterministic as a
result of using a DenseMap. Replacing with a Vector-backed `MapVector`
restores deterministic behaviour.
Protect IGMP and MLD6 fast timer with rwlock.
Multicast interface addresses for IPv4 and IPv6 get their own per
interface lock. Protect the TAILQ if_maddrlist with rwlock
if_maddrlock. Also struct in_multi and in6_multi use this lock for
their state and timer. Sleeps in malloc(9) are possible. Run IGMP
and MLD6 fast timeout with shared instead of exclusive net lock.
To prevent calling ip_output() or ip6_output() while holding the
multicast lock, delay igmp_sendpkt() and mld6_sendpkt(). All
information that is needed to create and send a multicast packet
is stored in igmp_pktinfo or mld6_pktinfo. If necessary, multiple
pktinfo are queued. After the lock has been released, packes are
sent based on pktinfo.
OK mvs@
devel/p5-TimeDate: Limit portscout to stable versions
Port changes:
- Add PORTSCOUT to stay with stable versions only
PR: 293723
Reported by: Sergei Vyshenski <svysh.fbsd at gmail.com> (maintainer)
Approved by: maintainer, osa (mentor)
[clangd] Code completion for declaration of class method (#165916)
Code completion previously could not tell apart the declaration of
a method from a call to it, and provided call-like behaviour even
in declaration contexts. This included things like not offering
completion for private methods, and inserting placeholders for
the parameters as though the user was going to fill in arguments.
This patch adds support to Parser and SemaCodeComplete to
detect and provide dedicated behaviour for declaration contexts.
In these contexts, the flag CodeCompletionResult::DeclaringEntity
is set, and createCodeCompletionString() is adjusted to handle this
flag, e.g. by inserting parameter declarations as text chunks rather
than placeholder chunks.
The DeclaringEntity flag is also available for consumers of
SemaCodeComplete, such as clangd, to customize their behaviour.
In addition, the patch tweaks the conditions under which the
[6 lines not shown]
For many many years now, it has been unnecessary to initialize the user
stack pointer before calling main(). TL;DR - %usp comes from the exception
frame and is restored in the syscall stub (always) or rei (if an AST is
pending). For newly-forked processes, those take the non-AST path through
rei, but lwp_trampoline() takes care of it in that case.
security/sudo-rs: Update 0.2.12 => 0.2.13
Changelog:
- Password now gets echoed by default, see sudoers file to revert
https://github.com/trifectatechfoundation/sudo-rs/releases/tag/v0.2.13
Port changes:
- Replace hardcoded /usr/local with %%PREFIX%% in files/sudoers.
- Use absolute path for "@includedir ..." in files/sudoers.
PR: 293735
Reported by: Valdemar Erk <valdemar at erk.dev>
Approved by: Marc Schoolderman <marc at trifectatech.org> (maintainer)
Approved by: osa@ (mentor)
[MLIR][XeGPU] Add distribution patterns for vector insert & extract ops in sg to wi pass (#184665)
This PR adds patterns for following vector ops in the new sg-to-wi pass
1. ExtractOp
2. ExtractStridedSliceOp
3. InsertStridedSliceOp
4. InsertOp
[Clang] Honour [[maybe_unused]] on private fields (#187940)
Before this commit, [[maybe_unused]] on private fields was ignored. In
conjunction with `-Wunused-private-field`, false warnings were emitted
by clang. This commit fixes this by checking if an unused private field
is annotated with [[maybe_unused]].
PR bin/60099 - Fix unquoted $* ($@) expansion
Make unquoted $* (or $@) when used in a context where field
splitting happens (which requires unquoted of course) generate
the same result, always, as would have been obtained had the
number of params been known, and
$1 $2 $3 ... ${n} (n is the value of $#)
been used instead of $* - so for x$*y, for any strings x & y
(including empty), the equivalent would be
x$1 $2 $3 ... ${n}y
This must hold, whatever the setting of IFS (which affects
how the fields generated are field split after they appear,
but should not affect the generation of those fields).
The bug this fixes is (in practice) never encountered, which is
how it has persisted for so long, and in so many different shells.
The method that was previously used to expand $* in this situation
would work perfectly, if the first character of ${IFS} was an IFS
[28 lines not shown]
Minor cleanups
Cleanup CTLccc char definitions (layout only):
#define [space|tab] consistency, align value column,
add hex equivalents (in comments) for octal char values
Minor changes to comments.
NFC.
Add DEBUG_ONLY() to include anything in DEBUG code
DEBUG_ONLY(x) expands to its arg, which should not contain commas
(outside parens) only in DEBUG mode compiles, most useful for var
declarations, and similar. Nb: code only, not outside functions.
Some cleanups/additions to comments.
By itself, this is a NFC change (until something uses DEBUG_ONLY()
for DEBUG mode code alteration).
PR lib/60111 - Add some bounds checking
As requested by the PR, bounds checking on the two obvious
places I could see where overflow looks possible has been added.
Detected overflow should generate a decode error.
PR 60119 - don't set -o pipefail (revert previous)
I was going to make the setting of the pipefail option check if
the executing shell supports the option or not (all should really,
and up to date dash does - it is a standard option) - but then I
looked at the script, and couldn't find a pipe used anywhere.
The option is useless here. So, bye-bye pipefail.
[VPlan] Add m_VPPhi pattern matcher and use in removeDeadRecipes (NFC).
Add m_VPPhi to match VPPhi instructions with exactly 2 operands.
Split off from https://github.com/llvm/llvm-project/pull/156262.