summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/XCore/XCoreAsmPrinter.cpp
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-07-25 06:49:55 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-07-25 06:49:55 +0000
commit5680b4f285402e7cf1dc6aa7e5527ca8270a55a7 (patch)
tree8ef1bb8de5dddc88860992616994fb07efd8de1f /llvm/lib/Target/XCore/XCoreAsmPrinter.cpp
parentd43b86d4a45f4cfc5b1e27d62ace35940a52e82b (diff)
downloadbcm5719-llvm-5680b4f285402e7cf1dc6aa7e5527ca8270a55a7.tar.gz
bcm5719-llvm-5680b4f285402e7cf1dc6aa7e5527ca8270a55a7.zip
Add new helpers for registering targets.
- Less boilerplate == good. llvm-svn: 77052
Diffstat (limited to 'llvm/lib/Target/XCore/XCoreAsmPrinter.cpp')
-rw-r--r--llvm/lib/Target/XCore/XCoreAsmPrinter.cpp18
1 files changed, 7 insertions, 11 deletions
diff --git a/llvm/lib/Target/XCore/XCoreAsmPrinter.cpp b/llvm/lib/Target/XCore/XCoreAsmPrinter.cpp
index 2a4d57b7ad3..5f2484293f6 100644
--- a/llvm/lib/Target/XCore/XCoreAsmPrinter.cpp
+++ b/llvm/lib/Target/XCore/XCoreAsmPrinter.cpp
@@ -28,6 +28,7 @@
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/Target/TargetAsmInfo.h"
#include "llvm/Target/TargetData.h"
+#include "llvm/Target/TargetRegistry.h"
#include "llvm/Support/Mangler.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/ADT/StringExtras.h"
@@ -91,17 +92,6 @@ namespace {
#include "XCoreGenAsmWriter.inc"
-/// createXCoreCodePrinterPass - Returns a pass that prints the XCore
-/// assembly code for a MachineFunction to the given output stream,
-/// using the given target machine description. This should work
-/// regardless of whether the function is in SSA form.
-///
-FunctionPass *llvm::createXCoreCodePrinterPass(formatted_raw_ostream &o,
- TargetMachine &tm,
- bool verbose) {
- return new XCoreAsmPrinter(o, tm, tm.getTargetAsmInfo(), verbose);
-}
-
void XCoreAsmPrinter::
emitGlobalDirective(const std::string &name)
{
@@ -387,3 +377,9 @@ bool XCoreAsmPrinter::doInitialization(Module &M) {
}
+
+// Force static initialization.
+extern "C" void LLVMInitializeXCoreTarget() {
+ RegisterTargetMachine<XCoreTargetMachine> X(TheXCoreTarget);
+ RegisterAsmPrinter<XCoreAsmPrinter> Y(TheXCoreTarget);
+}
OpenPOWER on IntegriCloud