[MachinePipeliner] Remove isLoopCarriedDep and use DDG (#174394)
This patch completely removes `isLoopCarriedDep`, which was used
previously to identify loop-carried dependencies in the DAG. Now that we
have the DDG representation, this special handling is no longer
necessary. Simply replacing its usage with the DDG causes several tests
to fail, since cycle detection takes some of the validation-only edges
in the DDG into account. To address this, this patch introduces extra
edges in the DDG, which are used only for cycle detection and not for
other parts of the pass (e.g., scheduling). The extra edges are
determined to preserve the existing behavior of the pass as closely as
possible, which makes the predicates for adding them somewhat complex.
Split off from #135148, and the final patch in the series for #135148
NAS-140518 / 27.0.0-BETA.1 / fix failing API test (move to unit) (#18625)
The commit in 59a74ce158 caused these tests to fail 100% of the time
with AttributeErrors. Further investigation made me realize these tests
are just mocking everything so there is no reason to keep these in api
tests. Move them to unit tests folder and test more scenarios that this
original one didn't test.
[InstCombine][NFC] Expose isKnownExactCastIntToFP as a public method
stack-info: PR: https://github.com/llvm/llvm-project/pull/190327, branch: users/SavchenkoValeriy/feat/instcombine/fcvtzu_fcvtzs_roundtrip/stack/1
remove dup block that tries to close tls client ca fd
it's already closed and fd set to -1 a few lines above.
diff from Marc Jorge (openbsd [at] cypher-fox com), thanks!
[CIR] Auto-generate matchAndRewrite for one-to-one CIR-to-LLVM lowerings
When a CIR op specifies a non-empty `llvmOp` field, the lowering
emitter now generates the `matchAndRewrite` body that converts the
result type and forwards all operands to the corresponding LLVM op.
This removes 27 boilerplate lowering patterns from LowerToLLVM.cpp.
Ops needing custom logic (FMaxNumOp/FMinNumOp for FastmathFlags::nsz)
override `llvmOp = ""` to retain hand-written implementations.
Also fixes llvmOp names (TruncOp -> FTruncOp, FloorOp -> FFloorOp)
and adds a diagnostic rejecting conflicting llvmOp + custom constructor.
[MLIR][MemRef] Fix AllocOp/AllocaOp flattening domination violation (#188980)
The generic MemRefRewritePattern handles AllocOp/AllocaOp by calling
getFlattenMemrefAndOffset with the op's own result as the source memref.
This inserts ExtractStridedMetadataOp and ReinterpretCastOp that consume
op.result before the alloc op itself in the block. After
replaceOpWithNewOp, op.result is RAUW'd to the new ReinterpretCastOp
result, leaving those earlier ops with forward references — a domination
violation caught by MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS.
Replace the AllocOp/AllocaOp cases in MemRefRewritePattern with a
dedicated AllocLikeFlattenPattern that never touches op.result until the
final replaceOpWithNewOp:
- sizes come from op.getMixedSizes() (operands, not the result)
- strides come from getStridesAndOffset on the MemRefType
- the flat allocation size is computed via
getLinearizedMemRefOffsetAndSize plus the static base offset so the
buffer covers [0, offset+extent)
- castAllocResult is simplified to take the pre-computed sizes and
[10 lines not shown]
net-mgmt/etherape: Update 0.9.20 => 0.9.21, take maintainership
Changelog:
* GooCanvas was unsupported and getting really old, replaced by
GtkDrawingArea.
* --final-export is primarily meant to be used from other tools as a way
to get statistics data from a replay. As such, --final-export exits
automatically after the file replay ends and the dump is written.
* Compatibility Warnings:
- removed GooCanvas dependency, drawing now done with plain Gtk.
- new behavior for --final-export: exit after saving the XML dump.
* Changes summary:
- Updated german translation, thanks to Christoph Brinkhaus.
- Fix for german translation, thanks to Ronald W. Henderson.
- Fix for gcc 15, thanks to Petr Gajdos.
- Assorted refactorings and small modernizations, including autotools.
Improve port:
- Replace PORTVERSION with DISTVERSION.
[14 lines not shown]
captive portal / hostwatch: output safety when list_hosts.py or decoding fails
arp.py seems to throw an exception an unpredictable times. Since
the most likely culprit is list_hosts.py, capture both
stderr of list_hosts and the exception value of the caller.
In any case, we reuse the old known ARP state to not kill
the CP background process
net-mgmt/etherape: Update 0.9.20 => 0.9.21, take maintainership
Changelog:
* GooCanvas was unsupported and getting really old, replaced by
GtkDrawingArea.
* --final-export is primarily meant to be used from other tools as a way
to get statistics data from a replay. As such, --final-export exits
automatically after the file replay ends and the dump is written.
* Compatibility Warnings:
- removed GooCanvas dependency, drawing now done with plain Gtk.
- new behavior for --final-export: exit after saving the XML dump.
* Changes summary:
- Updated german translation, thanks to Christoph Brinkhaus.
- Fix for german translation, thanks to Ronald W. Henderson.
- Fix for gcc 15, thanks to Petr Gajdos.
- Assorted refactorings and small modernizations, including autotools.
Improve port:
- Replace PORTVERSION with DISTVERSION.
[12 lines not shown]
[BOLT] Move extern "C" out of unnamed namespace (#190282)
GCC 15 changes how it interprets extern "C" in unnamed namespaces and
gives the variable internal linkage.