Revert "llvm-c: Make target initializer functions external functions in lib."

This reverts commit r192316. The original change introduced circular
dependencies between libTarget and backends. That would broke a build unless
link everything into one big binary.

llvm-svn: 192329
This commit is contained in:
Rui Ueyama 2013-10-09 23:15:49 +00:00
parent 197fee407e
commit 82166eef16
3 changed files with 36 additions and 55 deletions

View File

@ -75,32 +75,57 @@ typedef struct LLVMStructLayout *LLVMStructLayoutRef;
/** LLVMInitializeAllTargetInfos - The main program should call this function if
it wants access to all available targets that LLVM is configured to
support. */
void LLVMInitializeAllTargetInfos(void);
static inline void LLVMInitializeAllTargetInfos(void) {
#define LLVM_TARGET(TargetName) LLVMInitialize##TargetName##TargetInfo();
#include "llvm/Config/Targets.def"
#undef LLVM_TARGET /* Explicit undef to make SWIG happier */
}
/** LLVMInitializeAllTargets - The main program should call this function if it
wants to link in all available targets that LLVM is configured to
support. */
void LLVMInitializeAllTargets(void);
static inline void LLVMInitializeAllTargets(void) {
#define LLVM_TARGET(TargetName) LLVMInitialize##TargetName##Target();
#include "llvm/Config/Targets.def"
#undef LLVM_TARGET /* Explicit undef to make SWIG happier */
}
/** LLVMInitializeAllTargetMCs - The main program should call this function if
it wants access to all available target MC that LLVM is configured to
support. */
void LLVMInitializeAllTargetMCs(void);
static inline void LLVMInitializeAllTargetMCs(void) {
#define LLVM_TARGET(TargetName) LLVMInitialize##TargetName##TargetMC();
#include "llvm/Config/Targets.def"
#undef LLVM_TARGET /* Explicit undef to make SWIG happier */
}
/** LLVMInitializeAllAsmPrinters - The main program should call this function if
it wants all asm printers that LLVM is configured to support, to make them
available via the TargetRegistry. */
void LLVMInitializeAllAsmPrinters(void);
static inline void LLVMInitializeAllAsmPrinters(void) {
#define LLVM_ASM_PRINTER(TargetName) LLVMInitialize##TargetName##AsmPrinter();
#include "llvm/Config/AsmPrinters.def"
#undef LLVM_ASM_PRINTER /* Explicit undef to make SWIG happier */
}
/** LLVMInitializeAllAsmParsers - The main program should call this function if
it wants all asm parsers that LLVM is configured to support, to make them
available via the TargetRegistry. */
void LLVMInitializeAllAsmParsers(void);
static inline void LLVMInitializeAllAsmParsers(void) {
#define LLVM_ASM_PARSER(TargetName) LLVMInitialize##TargetName##AsmParser();
#include "llvm/Config/AsmParsers.def"
#undef LLVM_ASM_PARSER /* Explicit undef to make SWIG happier */
}
/** LLVMInitializeAllDisassemblers - The main program should call this function
if it wants all disassemblers that LLVM is configured to support, to make
them available via the TargetRegistry. */
void LLVMInitializeAllDisassemblers(void);
static inline void LLVMInitializeAllDisassemblers(void) {
#define LLVM_DISASSEMBLER(TargetName) \
LLVMInitialize##TargetName##Disassembler();
#include "llvm/Config/Disassemblers.def"
#undef LLVM_DISASSEMBLER /* Explicit undef to make SWIG happier */
}
/** LLVMInitializeNativeTarget - The main program should call this function to
initialize the native target corresponding to the host. This is useful

View File

@ -1,43 +0,0 @@
//===-- AllTargets.cpp ----------------------------------------------------===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file implements functions for initialization of different
// aspects of all configured targets. When calling any of these
// functions all configured targets must be linked in.
//
//===----------------------------------------------------------------------===//
#include "llvm-c/Target.h"
#include "llvm/Support/TargetSelect.h"
using namespace llvm;
void LLVMInitializeAllTargetInfos(void) {
InitializeAllTargetInfos();
}
void LLVMInitializeAllTargets(void) {
InitializeAllTargets();
}
void LLVMInitializeAllTargetMCs(void) {
InitializeAllTargetMCs();
}
void LLVMInitializeAllAsmPrinters(void) {
InitializeAllAsmPrinters();
}
void LLVMInitializeAllAsmParsers(void) {
InitializeAllAsmParsers();
}
void LLVMInitializeAllDisassemblers(void) {
InitializeAllDisassemblers();
}

View File

@ -1,5 +1,4 @@
add_llvm_library(LLVMTarget
AllTargets.cpp
Mangler.cpp
Target.cpp
TargetIntrinsicInfo.cpp