MC: Provide the target triple to AsmBackend constructors.
authorDaniel Dunbar <daniel@zuster.org>
Thu, 11 Mar 2010 01:34:16 +0000 (01:34 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Thu, 11 Mar 2010 01:34:16 +0000 (01:34 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98220 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Target/TargetRegistry.h
lib/Target/X86/X86.h
lib/Target/X86/X86AsmBackend.cpp

index a409b621af2b87a95312e33953d71cca1db39f16..c89a2b697257949967d3262d2cc280ba6dd8a5be 100644 (file)
@@ -66,7 +66,7 @@ namespace llvm {
                                             MCStreamer &Streamer,
                                             const MCAsmInfo *MAI);
     typedef TargetAsmBackend *(*AsmBackendCtorTy)(const Target &T,
-                                                  MCAssembler &A);
+                                                  const std::string &TT);
     typedef TargetAsmLexer *(*AsmLexerCtorTy)(const Target &T,
                                               const MCAsmInfo &MAI);
     typedef TargetAsmParser *(*AsmParserCtorTy)(const Target &T,MCAsmParser &P);
@@ -208,11 +208,12 @@ namespace llvm {
 
     /// createAsmBackend - Create a target specific assembly parser.
     ///
+    /// \arg Triple - The target triple string.
     /// \arg Backend - The target independent assembler object.
-    TargetAsmBackend *createAsmBackend(MCAssembler &Backend) const {
+    TargetAsmBackend *createAsmBackend(const std::string &Triple) const {
       if (!AsmBackendCtorFn)
         return 0;
-      return AsmBackendCtorFn(*this, Backend);
+      return AsmBackendCtorFn(*this, Triple);
     }
 
     /// createAsmLexer - Create a target specific assembly lexer.
index ba0ee6cedd7142c41e4e39488d0f6bda0f46eb13..c753cf2a530f98c0c3e91fc01301b7986375777f 100644 (file)
@@ -21,7 +21,6 @@ namespace llvm {
 
 class FunctionPass;
 class JITCodeEmitter;
-class MCAssembler;
 class MCCodeEmitter;
 class MCContext;
 class MachineCodeEmitter;
@@ -57,8 +56,8 @@ MCCodeEmitter *createX86_32MCCodeEmitter(const Target &, TargetMachine &TM,
 MCCodeEmitter *createX86_64MCCodeEmitter(const Target &, TargetMachine &TM,
                                          MCContext &Ctx);
 
-TargetAsmBackend *createX86_32AsmBackend(const Target &, MCAssembler &);
-TargetAsmBackend *createX86_64AsmBackend(const Target &, MCAssembler &);
+TargetAsmBackend *createX86_32AsmBackend(const Target &, const std::string &);
+TargetAsmBackend *createX86_64AsmBackend(const Target &, const std::string &);
 
 /// createX86EmitCodeToMemory - Returns a pass that converts a register
 /// allocated function into raw machine code in a dynamically
index e6654efbbb485755bbec4b4280564e77121c0125..2eda7b5986021d1e9f502658ac0a87c3c763a31b 100644 (file)
@@ -17,18 +17,18 @@ namespace {
 
 class X86AsmBackend : public TargetAsmBackend {
 public:
-  X86AsmBackend(const Target &T, MCAssembler &A)
+  X86AsmBackend(const Target &T)
     : TargetAsmBackend(T) {}
 };
 
 }
 
 TargetAsmBackend *llvm::createX86_32AsmBackend(const Target &T,
-                                               MCAssembler &A) {
-  return new X86AsmBackend(T, A);
+                                               const std::string &TT) {
+  return new X86AsmBackend(T);
 }
 
 TargetAsmBackend *llvm::createX86_64AsmBackend(const Target &T,
-                                               MCAssembler &A) {
-  return new X86AsmBackend(T, A);
+                                               const std::string &TT) {
+  return new X86AsmBackend(T);
 }