[flang] Inline max/minval according to -ffp-maxmin-behavior. (#185148)
This patch takes into account the option setting when inlining
max/minval intrinsics. It is not an NFC change for Flang, because:
* Inlining for integer types now uses arith.max/minsi operations.
* We do not mark the reduction loops as `unordered`
under `reassoc` FMF. I think this was not quite correct.
Otherwise, the default Legacy setting should produce the same
MLIR as before.
www/py-yt-dlp-ejs: Add USES=certs:fetch
npm requires this for some users/systems and not for others.
It's not clear what the differentiating factor is.
See details in the bug report.
PR: 268638
Reported by: James TD Smith
Mk/Uses: Add certs.mk to handle dependency on security/ca_root_nss
... as USES=certs:{phase} instead of reciting the whole dependency.
Around one hundred ports depend on security/ca_root_nss.
textproc/ctpp2: update MASTER_SITES and WWW
The project website is from time to time unreachable
and the source archive is not accessible anymore which
blocks the build process.
Create an alternate MASTER_SITES archive and update the
WWW to point to the archive.org backup of the website.
[MLIR][LLVM] Fix crash in LLVMFunctionType::clone when erasing void function results (#185093)
LLVMFunctionType::clone(inputs, results) was asserting that
results.size() == 1, which caused a crash (later changed to return
null/failure) when erasing results from a void llvm.func via
FunctionOpInterface::eraseResults.
For LLVM function types, an empty results range maps to void return: the
FunctionOpInterface represents void llvm.func with 0 results, while the
underlying LLVMFunctionType stores an explicit LLVMVoidType. When
erasing all results (or no-op erasing 0 results from a void function),
the interface passes an empty TypeRange to clone(), which should produce
a void function type.
Fix by accepting an empty results range in LLVMFunctionType::clone() and
mapping it to LLVMVoidType. More than one result remains invalid.
Fixes #128322
Assisted-by: Claude Code
[mlir] Fix crash in ForwardDominanceIterator when encountering graph regions (#185043)
ForwardDominanceIterator<NoGraphRegions=true> was asserting when it
encountered a region without SSA dominance (a "graph region"), such as
scf.forall.in_parallel's body. This crash was triggered by
-test-ir-visitors when walking functions that contain graph-region ops.
Change the behavior of ForwardDominanceIterator<true> and
ReverseDominanceIterator<true> to silently skip graph regions instead of
asserting, and update the documentation accordingly. This matches the
intended semantics of the NoGraphRegions flag: the traversal simply does
not enumerate blocks/ops inside such regions.
Fixes #116370
Assisted-by: Claude Code
[Hexagon] Add new register input/output types for qf instructions (#184398)
The v81 iset has been updated with input and output register
types/extensions for instructions. Currently, it supports qf32/qf16
register types. This patch implements a qf reg type lookup to query
these types. In the future, the register type extractor can be improved
and more APIs can be added to support other register types.
Co-authored-by: <santdas at qti.qualcomm.com>
[TableGen] Fix ordering of register classes with artificial members.
The current implementation wouldn't advance IB to skip artificial
registers once IA has reached the end.
[MVEGatherScatter] Fix GEP scale calculations (#185437)
The GEP scale for a single index GEP is the type alloc size of the
source element type. The pass was mostly computing it correctly, but two
places were doing something different.
[SandboxVec][DAG] Fix unscheduled succs when nodes are scheduled (#184946)
When we update use-def edges the DAG gets notified to update the
UnscheduledSuccs counters. However, if either edge node is already
scheduled we should not update UnscheduledSuccs because the
UnscheduledSuccs counter value should be treated as "undefined" after a
node has been scheduled, i.e., it's value has a meaning only before the
node gets scheduled.
[mlir][xegpu] Add support for setting `order` in `SetDescLayoutOp` and `SetOpLayoutAttrOp` transform ops. (#184705)
Currently XeGPU transform dialect does not allow the user to set the
`order` attribute of a layout in `SetDescLayoutOp` and
`SetOpLayoutAttrOp`. This PR adds `order` as an optional argument to
these transform ops.
14.4/errata: add issue - freebsd-update hanging when pkg is not bootstrapped
Add an erratum describing a problem where freebsd-update(8) commands such as
fetch or install may hang when pkg(8) is not bootstrapped.
The erratum also documents a workaround: bootstrap pkg(8) before running
freebsd-update(8).
Reviewed by: ziaee, grahamperrin
Approved by: ziaee, re (implicit)
Differential Revision: https://reviews.freebsd.org/D55754
PR: 293640