[llvm] [NFC] Replace `GetPatFromTreePatternNode` with `llvm::to_string` (PR #123754)
Tomas Matheson via llvm-commits
llvm-commits at lists.llvm.org
Tue Jan 21 06:30:11 PST 2025
https://github.com/tmatheson-arm created https://github.com/llvm/llvm-project/pull/123754
A couple of small tablegen changes, to simplify an upcoming patch:
- Replace `GetPatFromTreePatternNode` with `llvm::to_string`
- make `getInstructionsInTree` `const`
>From 6d10a23346c06334c2ef4e1dbab81d017cf5d445 Mon Sep 17 00:00:00 2001
From: Tomas Matheson <tomas.matheson at arm.com>
Date: Fri, 9 Feb 2024 15:11:31 +0000
Subject: [PATCH 1/2] [NFC] replace GetPatFromTreePatternNode with
llvm::to_string
---
llvm/utils/TableGen/DAGISelMatcherEmitter.cpp | 20 +++++--------------
1 file changed, 5 insertions(+), 15 deletions(-)
diff --git a/llvm/utils/TableGen/DAGISelMatcherEmitter.cpp b/llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
index f056306b2f8571..c4098f3c2d1bc7 100644
--- a/llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
+++ b/llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
@@ -22,6 +22,7 @@
#include "llvm/ADT/TinyPtrVector.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Format.h"
+#include "llvm/Support/ScopedPrinter.h" // for llvm::to_string
#include "llvm/Support/SourceMgr.h"
#include "llvm/TableGen/Error.h"
#include "llvm/TableGen/Record.h"
@@ -214,13 +215,6 @@ class MatcherTableEmitter {
};
} // end anonymous namespace.
-static std::string GetPatFromTreePatternNode(const TreePatternNode &N) {
- std::string str;
- raw_string_ostream Stream(str);
- Stream << N;
- return str;
-}
-
static unsigned GetVBRSize(unsigned Val) {
if (Val <= 127)
return 1;
@@ -941,10 +935,8 @@ unsigned MatcherTableEmitter::EmitMatcher(const Matcher *N,
if (const MorphNodeToMatcher *SNT = dyn_cast<MorphNodeToMatcher>(N)) {
NumCoveredBytes = 3;
OS << "OPC_Coverage, ";
- std::string src =
- GetPatFromTreePatternNode(SNT->getPattern().getSrcPattern());
- std::string dst =
- GetPatFromTreePatternNode(SNT->getPattern().getDstPattern());
+ std::string src = to_string(SNT->getPattern().getSrcPattern());
+ std::string dst = to_string(SNT->getPattern().getDstPattern());
const Record *PatRecord = SNT->getPattern().getSrcRecord();
std::string include_src = getIncludePath(PatRecord);
unsigned Offset =
@@ -1054,10 +1046,8 @@ unsigned MatcherTableEmitter::EmitMatcher(const Matcher *N,
if (InstrumentCoverage) {
NumCoveredBytes = 3;
OS << "OPC_Coverage, ";
- std::string src =
- GetPatFromTreePatternNode(CM->getPattern().getSrcPattern());
- std::string dst =
- GetPatFromTreePatternNode(CM->getPattern().getDstPattern());
+ std::string src = to_string(CM->getPattern().getSrcPattern());
+ std::string dst = to_string(CM->getPattern().getDstPattern());
const Record *PatRecord = CM->getPattern().getSrcRecord();
std::string include_src = getIncludePath(PatRecord);
unsigned Offset =
>From 3fa2cf6b1a6a4509635c2c90bed2876beb748110 Mon Sep 17 00:00:00 2001
From: Tomas Matheson <tomas.matheson at arm.com>
Date: Fri, 9 Feb 2024 15:58:51 +0000
Subject: [PATCH 2/2] make getInstructionsInTree const
---
llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
index 013135a9def1f5..b95fe4eedda83e 100644
--- a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
+++ b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
@@ -3715,7 +3715,7 @@ static bool hasNullFragReference(const ListInit *LI) {
}
/// Get all the instructions in a tree.
-static void getInstructionsInTree(TreePatternNode &Tree,
+static void getInstructionsInTree(const TreePatternNode &Tree,
SmallVectorImpl<const Record *> &Instrs) {
if (Tree.isLeaf())
return;
More information about the llvm-commits
mailing list