X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=utils%2FTableGen%2FDAGISelEmitter.h;h=2117e65455ac442f58dfb7c75c63c29515927d2b;hb=0aed1e770149301af473ce05a83f73be01c06fe0;hp=804ebdb21bc2e563563f926ebe78048d5d13ae50;hpb=443e3f9dd61b8d0974bb13d484195ce1a9b7536c;p=oota-llvm.git diff --git a/utils/TableGen/DAGISelEmitter.h b/utils/TableGen/DAGISelEmitter.h index 804ebdb21bc..2117e65455a 100644 --- a/utils/TableGen/DAGISelEmitter.h +++ b/utils/TableGen/DAGISelEmitter.h @@ -14,6 +14,7 @@ #ifndef DAGISEL_EMITTER_H #define DAGISEL_EMITTER_H +#include "TableGenBackend.h" #include "CodeGenDAGPatterns.h" #include @@ -24,28 +25,12 @@ namespace llvm { /// class DAGISelEmitter : public TableGenBackend { RecordKeeper &Records; - CodegenDAGPatterns *CGP; + CodeGenDAGPatterns CGP; public: - DAGISelEmitter(RecordKeeper &R) : Records(R) {} + explicit DAGISelEmitter(RecordKeeper &R) : Records(R), CGP(R) {} // run - Output the isel, returning true on failure. - void run(std::ostream &OS); - - -private: - void EmitNodeTransforms(std::ostream &OS); - void EmitPredicateFunctions(std::ostream &OS); - - void GenerateCodeForPattern(const PatternToMatch &Pattern, - std::vector > &GeneratedCode, - std::set &GeneratedDecl, - std::vector &TargetOpcodes, - std::vector &TargetVTs); - void EmitPatterns(std::vector > > > &Patterns, - unsigned Indent, std::ostream &OS); - - void EmitInstructionSelector(std::ostream &OS); + void run(raw_ostream &OS); }; } // End llvm namespace