summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-07-15 07:48:39 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-07-15 07:48:39 +0000
commit6461716b508d9e086641dac727a6e918b833f583 (patch)
tree293d56b06420929293701be2538d1edc04770860
parent8cca8f98bbe7589818a9f944a345b5699854c01f (diff)
downloadllvm-6461716b508d9e086641dac727a6e918b833f583.tar.gz
llvm-6461716b508d9e086641dac727a6e918b833f583.tar.bz2
llvm-6461716b508d9e086641dac727a6e918b833f583.tar.xz
Include Target specific Info initialization routine when initializing all
targets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75756 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/Target/TargetSelect.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/include/llvm/Target/TargetSelect.h b/include/llvm/Target/TargetSelect.h
index 002d5fc70e..19b660b52d 100644
--- a/include/llvm/Target/TargetSelect.h
+++ b/include/llvm/Target/TargetSelect.h
@@ -1,4 +1,4 @@
-//===- TargetSelect.h - Target Selection & Registration -------------------===//
+//===- TargetSelect.h - Target Selection & Registration ---------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -20,6 +20,9 @@
extern "C" {
// Declare all of the target-initialization functions that are available.
+#define LLVM_TARGET(TargetName) void LLVMInitialize##TargetName##TargetInfo();
+#include "llvm/Config/Targets.def"
+
#define LLVM_TARGET(TargetName) void LLVMInitialize##TargetName##Target();
#include "llvm/Config/Targets.def"
@@ -30,8 +33,13 @@ extern "C" {
namespace llvm {
/// InitializeAllTargets - The main program should call this function if it
- /// wants to link in all available targets that LLVM is configured to support.
+ /// wants access to all available targets that LLVM is configured to
+ /// support. This allows the client to query the available targets using the
+ /// target registration mechanisms.
inline void InitializeAllTargets() {
+#define LLVM_TARGET(TargetName) LLVMInitialize##TargetName##TargetInfo();
+#include "llvm/Config/Targets.def"
+
#define LLVM_TARGET(TargetName) LLVMInitialize##TargetName##Target();
#include "llvm/Config/Targets.def"
}