Factor GC metadata table assembly generation out of Collector in preparation for splitting AsmPrinter into its own library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54880 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/Collector.cpp b/lib/CodeGen/Collector.cpp
index 1a1fb7c..6fd0189 100644
--- a/lib/CodeGen/Collector.cpp
+++ b/lib/CodeGen/Collector.cpp
@@ -92,7 +92,8 @@
CustomReadBarriers(false),
CustomWriteBarriers(false),
CustomRoots(false),
- InitRoots(true)
+ InitRoots(true),
+ UsesMetadata(false)
{}
Collector::~Collector() {
@@ -110,16 +111,6 @@
return 0;
}
-void Collector::beginAssembly(std::ostream &OS, AsmPrinter &AP,
- const TargetAsmInfo &TAI) {
- // Default is no action.
-}
-
-void Collector::finishAssembly(std::ostream &OS, AsmPrinter &AP,
- const TargetAsmInfo &TAI) {
- // Default is no action.
-}
-
CollectorMetadata *Collector::insertFunctionMetadata(const Function &F) {
CollectorMetadata *CM = new CollectorMetadata(F, *this);
Functions.push_back(CM);
@@ -128,6 +119,22 @@
// -----------------------------------------------------------------------------
+GCMetadataPrinter::GCMetadataPrinter() { }
+
+GCMetadataPrinter::~GCMetadataPrinter() { }
+
+void GCMetadataPrinter::beginAssembly(std::ostream &OS, AsmPrinter &AP,
+ const TargetAsmInfo &TAI) {
+ // Default is no action.
+}
+
+void GCMetadataPrinter::finishAssembly(std::ostream &OS, AsmPrinter &AP,
+ const TargetAsmInfo &TAI) {
+ // Default is no action.
+}
+
+// -----------------------------------------------------------------------------
+
FunctionPass *llvm::createGCLoweringPass() {
return new LowerIntrinsics();
}