[llvm-commits] [llvm] r158389 - in /llvm/trunk: include/llvm/TableGen/TableGenBackend.h lib/TableGen/TableGenBackend.cpp

Jakob Stoklund Olesen stoklund at 2pi.dk
Tue Jun 12 22:15:49 PDT 2012


Author: stoklund
Date: Wed Jun 13 00:15:49 2012
New Revision: 158389

URL: http://llvm.org/viewvc/llvm-project?rev=158389&view=rev
Log:
Eliminate struct TableGenBackend.

TableGen backends are simply written as functions now.

Patch by Sean Silva!

Modified:
    llvm/trunk/include/llvm/TableGen/TableGenBackend.h
    llvm/trunk/lib/TableGen/TableGenBackend.cpp

Modified: llvm/trunk/include/llvm/TableGen/TableGenBackend.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/TableGen/TableGenBackend.h?rev=158389&r1=158388&r2=158389&view=diff
==============================================================================
--- llvm/trunk/include/llvm/TableGen/TableGenBackend.h (original)
+++ llvm/trunk/include/llvm/TableGen/TableGenBackend.h Wed Jun 13 00:15:49 2012
@@ -1,4 +1,4 @@
-//===- llvm/TableGen/TableGenBackend.h - Backend base class -----*- C++ -*-===//
+//===- llvm/TableGen/TableGenBackend.h - Backend utilities ------*- C++ -*-===//
 //
 //                     The LLVM Compiler Infrastructure
 //
@@ -7,39 +7,21 @@
 //
 //===----------------------------------------------------------------------===//
 //
-// The TableGenBackend class is provided as a common interface for all TableGen
-// backends.  It provides useful services and an standardized interface.
+// Useful utilities for TableGen backends.
 //
 //===----------------------------------------------------------------------===//
 
 #ifndef LLVM_TABLEGEN_TABLEGENBACKEND_H
 #define LLVM_TABLEGEN_TABLEGENBACKEND_H
 
-#include "llvm/Support/raw_ostream.h"
+#include "llvm/ADT/StringRef.h"
 
 namespace llvm {
 
-class Record;
-class RecordKeeper;
-
-struct TableGenBackend {
-  virtual void anchor();
-  virtual ~TableGenBackend() {}
-
-  // run - All TableGen backends should implement the run method, which should
-  // be the main entry point.
-  virtual void run(raw_ostream &OS) = 0;
-
-
-public:   // Useful helper routines...
-  /// EmitSourceFileHeader - Output a LLVM style file header to the specified
-  /// ostream.
-  void EmitSourceFileHeader(StringRef Desc, raw_ostream &OS) const;
-
-};
+class raw_ostream;
 
 /// emitSourceFileHeader - Output a LLVM style file header to the specified
-/// ostream.
+/// raw_ostream.
 void emitSourceFileHeader(StringRef Desc, raw_ostream &OS);
 
 } // End llvm namespace

Modified: llvm/trunk/lib/TableGen/TableGenBackend.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/TableGen/TableGenBackend.cpp?rev=158389&r1=158388&r2=158389&view=diff
==============================================================================
--- llvm/trunk/lib/TableGen/TableGenBackend.cpp (original)
+++ llvm/trunk/lib/TableGen/TableGenBackend.cpp Wed Jun 13 00:15:49 2012
@@ -1,4 +1,4 @@
-//===- TableGenBackend.cpp - Base class for TableGen Backends ---*- C++ -*-===//
+//===- TableGenBackend.cpp - Utilities for TableGen Backends ----*- C++ -*-===//
 //
 //                     The LLVM Compiler Infrastructure
 //
@@ -11,17 +11,10 @@
 //
 //===----------------------------------------------------------------------===//
 
+#include "llvm/Support/raw_ostream.h"
 #include "llvm/TableGen/TableGenBackend.h"
-#include "llvm/TableGen/Record.h"
 using namespace llvm;
 
-void TableGenBackend::anchor() { }
-
-void TableGenBackend::EmitSourceFileHeader(StringRef Desc,
-                                           raw_ostream &OS) const {
-  emitSourceFileHeader(Desc, OS);
-}
-
 void llvm::emitSourceFileHeader(StringRef Desc, raw_ostream &OS) {
   OS << "//===- TableGen'erated file -------------------------------------*-"
        " C++ -*-===//\n//\n// " << Desc << "\n//\n// Automatically generate"





More information about the llvm-commits mailing list