[llvm] [X86][TableGen] Remove unnecessary use of formatted_raw_ostream. NFC (PR #89343)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 18 20:47:38 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-backend-x86
Author: Craig Topper (topperc)
<details>
<summary>Changes</summary>
This code used to use the PadToColumn feature of formatted_raw_ostream, but no longer does. formatted_raw_ostream is slower than regular raw_ostream because it has to keep track of the number of character since the last new line character.
---
Full diff: https://github.com/llvm/llvm-project/pull/89343.diff
1 Files Affected:
- (modified) llvm/utils/TableGen/X86FoldTablesEmitter.cpp (+3-6)
``````````diff
diff --git a/llvm/utils/TableGen/X86FoldTablesEmitter.cpp b/llvm/utils/TableGen/X86FoldTablesEmitter.cpp
index 0e3674751fde6a..1440863ea5618f 100644
--- a/llvm/utils/TableGen/X86FoldTablesEmitter.cpp
+++ b/llvm/utils/TableGen/X86FoldTablesEmitter.cpp
@@ -15,7 +15,6 @@
#include "Common/CodeGenTarget.h"
#include "X86RecognizableInstr.h"
#include "llvm/ADT/StringSwitch.h"
-#include "llvm/Support/FormattedStream.h"
#include "llvm/Support/X86FoldTablesUtils.h"
#include "llvm/TableGen/Record.h"
#include "llvm/TableGen/TableGenBackend.h"
@@ -95,7 +94,7 @@ class X86FoldTablesEmitter {
const CodeGenInstruction *MemInst)
: RegInst(RegInst), MemInst(MemInst) {}
- void print(formatted_raw_ostream &OS) const {
+ void print(raw_ostream &OS) const {
OS.indent(2);
OS << "{X86::" << RegInst->TheDef->getName() << ", ";
OS << "X86::" << MemInst->TheDef->getName() << ", ";
@@ -222,7 +221,7 @@ class X86FoldTablesEmitter {
// Print the given table as a static const C++ array of type
// X86FoldTableEntry.
void printTable(const FoldTable &Table, StringRef TableName,
- formatted_raw_ostream &OS) {
+ raw_ostream &OS) {
OS << "static const X86FoldTableEntry " << TableName << "[] = {\n";
for (auto &E : Table)
@@ -619,9 +618,7 @@ void X86FoldTablesEmitter::updateTables(const CodeGenInstruction *RegInst,
}
}
-void X86FoldTablesEmitter::run(raw_ostream &O) {
- formatted_raw_ostream OS(O);
-
+void X86FoldTablesEmitter::run(raw_ostream &OS) {
// Holds all memory instructions
std::vector<const CodeGenInstruction *> MemInsts;
// Holds all register instructions - divided according to opcode.
``````````
</details>
https://github.com/llvm/llvm-project/pull/89343
More information about the llvm-commits
mailing list