Fixed library dependencies between the X86 disassembler and
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
diff --git a/lib/Target/X86/Disassembler/X86Disassembler.cpp b/lib/Target/X86/Disassembler/X86Disassembler.cpp
index 4bb9075..17dbd7f 100644
--- a/lib/Target/X86/Disassembler/X86Disassembler.cpp
+++ b/lib/Target/X86/Disassembler/X86Disassembler.cpp
@@ -14,11 +14,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-#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 @@
   };
 }
 
+extern Target TheX86_32Target, TheX86_64Target;
+
 }
 
 static void translateInstruction(MCInst &target,
@@ -461,8 +463,3 @@
   TargetRegistry::RegisterMCDisassembler(TheX86_64Target,
                                          createX86_64Disassembler);
 }
-
-#endif
-
-extern "C" void LLVMInitializeX86Disassembler() { 
-}
diff --git a/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c b/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c
index 118a7a3..84c1dc9 100644
--- a/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c
+++ b/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c
@@ -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 @@
   
   return 0;
 }
-
-#endif
-
-int X86DissemblerDecoder_dummy = 0;
diff --git a/lib/Target/X86/X86TargetMachine.cpp b/lib/Target/X86/X86TargetMachine.cpp
index c22c9fe..962f0f7 100644
--- a/lib/Target/X86/X86TargetMachine.cpp
+++ b/lib/Target/X86/X86TargetMachine.cpp
@@ -38,8 +38,6 @@
   }
 }
 
-extern "C" void LLVMInitializeX86Disassembler();
-
 extern "C" void LLVMInitializeX86Target() { 
   // Register the target.
   RegisterTargetMachine<X86_32TargetMachine> X(TheX86_32Target);
@@ -49,8 +47,6 @@
   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);