mirror of https://github.com/llvm/circt.git
[NFC][Seq] Add folders to clock conversions
This commit is contained in:
parent
d838fb8a53
commit
68b79fc35f
|
@ -544,6 +544,7 @@ def ToClockOp : SeqOp<"to_clock", [Pure]> {
|
|||
|
||||
let assemblyFormat = "$input attr-dict";
|
||||
|
||||
let hasFolder = 1;
|
||||
let hasCanonicalizeMethod = 1;
|
||||
}
|
||||
|
||||
|
@ -555,5 +556,6 @@ def FromClockOp : SeqOp<"from_clock", [Pure]> {
|
|||
|
||||
let assemblyFormat = "$input attr-dict";
|
||||
|
||||
let hasFolder = 1;
|
||||
let hasCanonicalizeMethod = 1;
|
||||
}
|
||||
|
|
|
@ -896,6 +896,12 @@ LogicalResult ToClockOp::canonicalize(ToClockOp op, PatternRewriter &rewriter) {
|
|||
return failure();
|
||||
}
|
||||
|
||||
OpFoldResult ToClockOp::fold(FoldAdaptor adaptor) {
|
||||
if (auto fromClock = getInput().getDefiningOp<FromClockOp>())
|
||||
return fromClock.getInput();
|
||||
return {};
|
||||
}
|
||||
|
||||
LogicalResult FromClockOp::canonicalize(FromClockOp op,
|
||||
PatternRewriter &rewriter) {
|
||||
if (auto toClock = op.getInput().getDefiningOp<ToClockOp>()) {
|
||||
|
@ -905,6 +911,12 @@ LogicalResult FromClockOp::canonicalize(FromClockOp op,
|
|||
return failure();
|
||||
}
|
||||
|
||||
OpFoldResult FromClockOp::fold(FoldAdaptor adaptor) {
|
||||
if (auto toClock = getInput().getDefiningOp<ToClockOp>())
|
||||
return toClock.getInput();
|
||||
return {};
|
||||
}
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// TableGen generated logic.
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
|
Loading…
Reference in New Issue