[Mlir-commits] [mlir] [mlir] Add operator<< for printing `Block` (PR #92550)
Krzysztof Parzyszek
llvmlistbot at llvm.org
Fri May 17 08:24:52 PDT 2024
https://github.com/kparzysz updated https://github.com/llvm/llvm-project/pull/92550
>From db8ac496f9c08e6405a33436ed237c9568c85673 Mon Sep 17 00:00:00 2001
From: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: Fri, 17 May 2024 08:55:38 -0500
Subject: [PATCH 1/2] [mlir] Add operator<< for printing `Block`
---
mlir/include/mlir/IR/Block.h | 3 +++
mlir/lib/IR/AsmPrinter.cpp | 5 +++++
2 files changed, 8 insertions(+)
diff --git a/mlir/include/mlir/IR/Block.h b/mlir/include/mlir/IR/Block.h
index c14e9aad8f6d1..e4fddfcb7608e 100644
--- a/mlir/include/mlir/IR/Block.h
+++ b/mlir/include/mlir/IR/Block.h
@@ -18,6 +18,7 @@
namespace llvm {
class BitVector;
+class raw_ostream;
} // namespace llvm
namespace mlir {
@@ -401,6 +402,8 @@ class Block : public IRObjectWithUseList<BlockOperand>,
friend struct llvm::ilist_traits<Block>;
};
+
+raw_ostream &operator<<(raw_ostream &, Block &);
} // namespace mlir
#endif // MLIR_IR_BLOCK_H
diff --git a/mlir/lib/IR/AsmPrinter.cpp b/mlir/lib/IR/AsmPrinter.cpp
index 9a5c51ba738f9..29e36210f1270 100644
--- a/mlir/lib/IR/AsmPrinter.cpp
+++ b/mlir/lib/IR/AsmPrinter.cpp
@@ -3984,6 +3984,11 @@ void Block::printAsOperand(raw_ostream &os, AsmState &state) {
printer.printBlockName(this);
}
+raw_ostream &mlir::operator<<(raw_ostream &os, Block &block) {
+ block.print(os);
+ return os;
+}
+
//===--------------------------------------------------------------------===//
// Custom printers
//===--------------------------------------------------------------------===//
>From f73795e27a9ccb5549064ec986c03e79c935b1f8 Mon Sep 17 00:00:00 2001
From: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: Fri, 17 May 2024 10:22:50 -0500
Subject: [PATCH 2/2] Remove operator<< from CFGLoopInfo
---
mlir/include/mlir/Analysis/CFGLoopInfo.h | 2 --
mlir/lib/Analysis/CFGLoopInfo.cpp | 5 -----
2 files changed, 7 deletions(-)
diff --git a/mlir/include/mlir/Analysis/CFGLoopInfo.h b/mlir/include/mlir/Analysis/CFGLoopInfo.h
index 41e75021942c6..15ac0d71cb94d 100644
--- a/mlir/include/mlir/Analysis/CFGLoopInfo.h
+++ b/mlir/include/mlir/Analysis/CFGLoopInfo.h
@@ -49,8 +49,6 @@ class CFGLoopInfo : public llvm::LoopInfoBase<mlir::Block, mlir::CFGLoop> {
CFGLoopInfo(const llvm::DominatorTreeBase<mlir::Block, false> &domTree);
};
-raw_ostream &operator<<(raw_ostream &os, mlir::Block &block);
-
} // namespace mlir
#endif // MLIR_ANALYSIS_LOOPINFO_H
diff --git a/mlir/lib/Analysis/CFGLoopInfo.cpp b/mlir/lib/Analysis/CFGLoopInfo.cpp
index 785f6c05d76e6..9fe220344dcea 100644
--- a/mlir/lib/Analysis/CFGLoopInfo.cpp
+++ b/mlir/lib/Analysis/CFGLoopInfo.cpp
@@ -23,8 +23,3 @@ CFGLoopInfo::CFGLoopInfo(
const llvm::DominatorTreeBase<mlir::Block, false> &domTree) {
analyze(domTree);
}
-
-raw_ostream &mlir::operator<<(raw_ostream &os, mlir::Block &block) {
- block.print(os);
- return os;
-}
More information about the Mlir-commits
mailing list