diff options
-rw-r--r-- | autoconf/configure.ac | 2 | ||||
-rwxr-xr-x | cmake/config-ix.cmake | 1 | ||||
-rwxr-xr-x | configure | 7 | ||||
-rw-r--r-- | include/llvm/Config/config.h.cmake | 3 | ||||
-rw-r--r-- | include/llvm/Config/config.h.in | 3 | ||||
-rw-r--r-- | include/llvm/Target/TargetSelect.h | 11 |
6 files changed, 17 insertions, 10 deletions
diff --git a/autoconf/configure.ac b/autoconf/configure.ac index 0924a777b4..18c9669cc9 100644 --- a/autoconf/configure.ac +++ b/autoconf/configure.ac @@ -599,6 +599,8 @@ AC_SUBST(TARGETS_TO_BUILD,$TARGETS_TO_BUILD) for a_target in $TARGETS_TO_BUILD; do if test "$a_target" = "$LLVM_NATIVE_ARCH"; then LLVM_NATIVE_ARCHTARGET="${LLVM_NATIVE_ARCH}Target" + AC_DEFINE_UNQUOTED(LLVM_NATIVE_ARCHNAME,$LLVM_NATIVE_ARCH, + [Short LLVM architecture name for the native architecture, if available]) AC_DEFINE_UNQUOTED(LLVM_NATIVE_ARCH,$LLVM_NATIVE_ARCHTARGET, [LLVM architecture name for the native architecture, if available]) fi diff --git a/cmake/config-ix.cmake b/cmake/config-ix.cmake index d9450d9258..e3e5e8d28f 100755 --- a/cmake/config-ix.cmake +++ b/cmake/config-ix.cmake @@ -207,6 +207,7 @@ else () endif () if (LLVM_NATIVE_ARCH) + set(LLVM_NATIVE_ARCHNAME ${LLVM_NATIVE_ARCH}) list(FIND LLVM_TARGETS_TO_BUILD ${LLVM_NATIVE_ARCH} NATIVE_ARCH_IDX) if (NATIVE_ARCH_IDX EQUAL -1) message(STATUS @@ -5018,6 +5018,11 @@ for a_target in $TARGETS_TO_BUILD; do LLVM_NATIVE_ARCHTARGET="${LLVM_NATIVE_ARCH}Target" cat >>confdefs.h <<_ACEOF +#define LLVM_NATIVE_ARCHNAME $LLVM_NATIVE_ARCH +_ACEOF + + +cat >>confdefs.h <<_ACEOF #define LLVM_NATIVE_ARCH $LLVM_NATIVE_ARCHTARGET _ACEOF @@ -11391,7 +11396,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 11394 "configure" +#line 11399 "configure" #include "confdefs.h" #if HAVE_DLFCN_H diff --git a/include/llvm/Config/config.h.cmake b/include/llvm/Config/config.h.cmake index e7594babaa..5468316f9c 100644 --- a/include/llvm/Config/config.h.cmake +++ b/include/llvm/Config/config.h.cmake @@ -625,3 +625,6 @@ /* Native LLVM architecture */ #cmakedefine LLVM_NATIVE_ARCH ${LLVM_NATIVE_ARCH}Target + +/* Native LLVM architecture, short name */ +#cmakedefine LLVM_NATIVE_ARCHNAME ${LLVM_NATIVE_ARCH} diff --git a/include/llvm/Config/config.h.in b/include/llvm/Config/config.h.in index d76db860e3..9a10f7f06c 100644 --- a/include/llvm/Config/config.h.in +++ b/include/llvm/Config/config.h.in @@ -500,6 +500,9 @@ /* LLVM architecture name for the native architecture, if available */ #undef LLVM_NATIVE_ARCH +/* Short LLVM architecture name for the native architecture, if available */ +#undef LLVM_NATIVE_ARCHNAME + /* Define if this is Unixish platform */ #undef LLVM_ON_UNIX diff --git a/include/llvm/Target/TargetSelect.h b/include/llvm/Target/TargetSelect.h index fc3244acd8..3ade00dc8d 100644 --- a/include/llvm/Target/TargetSelect.h +++ b/include/llvm/Target/TargetSelect.h @@ -30,13 +30,6 @@ extern "C" { #define LLVM_ASM_PRINTER(TargetName) void LLVMInitialize##TargetName##AsmPrinter(); #include "llvm/Config/AsmPrinters.def" - // FIXME: Workaround for unfortunate definition of LLVM_NATIVE_ARCH. -#define LLVM_ASM_PRINTER(TargetName) \ - static inline void LLVMInitialize##TargetName##TargetAsmPrinter() { \ - LLVMInitialize##TargetName##AsmPrinter(); \ - } -#include "llvm/Config/AsmPrinters.def" - // Declare all of the available assembly parser initialization functions. #define LLVM_ASM_PARSER(TargetName) void LLVMInitialize##TargetName##AsmParser(); #include "llvm/Config/AsmParsers.def" @@ -107,7 +100,7 @@ namespace llvm { /// It is legal for a client to make multiple calls to this function. inline bool InitializeNativeTarget() { // If we have a native target, initialize it to ensure it is linked in. -#ifdef LLVM_NATIVE_ARCH +#ifdef LLVM_NATIVE_ARCHNAME #define DoInit2(TARG) \ LLVMInitialize ## TARG ## Info (); \ LLVMInitialize ## TARG () @@ -129,7 +122,7 @@ namespace llvm { #define DoInit2(TARG) \ LLVMInitialize ## TARG ## AsmPrinter (); #define DoInit(T) DoInit2(T) - DoInit(LLVM_NATIVE_ARCH); + DoInit(LLVM_NATIVE_ARCHNAME); return false; #undef DoInit #undef DoInit2 |