Fixed library dependencies between the X86 disassembler and
authorSean Callanan <scallanan@apple.com>
Tue, 22 Dec 2009 01:11:26 +0000 (01:11 +0000)
committerSean Callanan <scallanan@apple.com>
Tue, 22 Dec 2009 01:11:26 +0000 (01:11 +0000)
X86 codegen that were causing circular symbol dependencies.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91871 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/Disassembler/X86Disassembler.cpp
lib/Target/X86/Disassembler/X86DisassemblerDecoder.c
lib/Target/X86/X86TargetMachine.cpp

index 4bb9075789ae87f123db0e54647d3feb29f6fa33..17dbd7f237f389a3fcdc1017b941e1b590e252fc 100644 (file)
 //
 //===----------------------------------------------------------------------===//
 
-#if 0
-
 #include "X86Disassembler.h"
 #include "X86DisassemblerDecoder.h"
-#include "X86InstrInfo.h"
 
 #include "llvm/MC/MCDisassembler.h"
 #include "llvm/MC/MCDisassembler.h"
@@ -27,6 +24,9 @@
 #include "llvm/Support/MemoryObject.h"
 #include "llvm/Support/ErrorHandling.h"
 #include "llvm/Support/raw_ostream.h"
+
+#include "../X86GenRegisterNames.inc"
+
 using namespace llvm;
 using namespace llvm::X86Disassembler;
 
@@ -46,6 +46,8 @@ namespace X86 {
   };
 }
 
+extern Target TheX86_32Target, TheX86_64Target;
+
 }
 
 static void translateInstruction(MCInst &target,
@@ -461,8 +463,3 @@ extern "C" void LLVMInitializeX86Disassembler() {
   TargetRegistry::RegisterMCDisassembler(TheX86_64Target,
                                          createX86_64Disassembler);
 }
-
-#endif
-
-extern "C" void LLVMInitializeX86Disassembler() { 
-}
index 118a7a389fd67452d156a9b9ec67de9be5745af2..84c1dc945e1d1b9621a57d435b21f692d5ad9ed6 100644 (file)
@@ -13,8 +13,6 @@
  *
  *===----------------------------------------------------------------------===*/
 
-#if 0
-
 #include <assert.h>   /* for assert()     */
 #include <stdarg.h>   /* for va_*()       */
 #include <stdio.h>    /* for vsnprintf()  */
@@ -1361,7 +1359,3 @@ int decodeInstruction(struct InternalInstruction* insn,
   
   return 0;
 }
-
-#endif
-
-int X86DissemblerDecoder_dummy = 0;
index c22c9fea72b83144e693f49a23e348376f384e0a..962f0f7be9a13fb15f315cbe6fbdb640523ca357 100644 (file)
@@ -38,8 +38,6 @@ static const MCAsmInfo *createMCAsmInfo(const Target &T, StringRef TT) {
   }
 }
 
-extern "C" void LLVMInitializeX86Disassembler();
-
 extern "C" void LLVMInitializeX86Target() { 
   // Register the target.
   RegisterTargetMachine<X86_32TargetMachine> X(TheX86_32Target);
@@ -49,8 +47,6 @@ extern "C" void LLVMInitializeX86Target() {
   RegisterAsmInfoFn A(TheX86_32Target, createMCAsmInfo);
   RegisterAsmInfoFn B(TheX86_64Target, createMCAsmInfo);
 
-  LLVMInitializeX86Disassembler();
-
   // Register the code emitter.
   TargetRegistry::RegisterCodeEmitter(TheX86_32Target, createX86MCCodeEmitter);
   TargetRegistry::RegisterCodeEmitter(TheX86_64Target, createX86MCCodeEmitter);