Ping
2013/12/13 Alexey Volkov <[email protected]> > Ping > > > 2013/12/4 Alexey Volkov <[email protected]> > >> Addressed David's comment regarding other Android 64-bit targets. >> >> http://llvm-reviews.chandlerc.com/D2325 >> >> CHANGE SINCE LAST DIFF >> http://llvm-reviews.chandlerc.com/D2325?vs=5893&id=5898#toc >> >> Files: >> lib/Driver/ToolChains.cpp >> lib/Driver/Tools.cpp >> test/Driver/clang-translation.c >> test/Driver/linux-ld.c >> >> Index: lib/Driver/ToolChains.cpp >> =================================================================== >> --- lib/Driver/ToolChains.cpp >> +++ lib/Driver/ToolChains.cpp >> @@ -1118,14 +1118,15 @@ >> static const char *const X86_64Triples[] = { >> "x86_64-linux-gnu", "x86_64-unknown-linux-gnu", >> "x86_64-pc-linux-gnu", >> "x86_64-redhat-linux6E", "x86_64-redhat-linux", "x86_64-suse-linux", >> - "x86_64-manbo-linux-gnu", "x86_64-linux-gnu", >> "x86_64-slackware-linux" >> + "x86_64-manbo-linux-gnu", "x86_64-linux-gnu", >> "x86_64-slackware-linux", >> + "x86_64-linux-android" >> }; >> static const char *const X86LibDirs[] = { "/lib32", "/lib" }; >> static const char *const X86Triples[] = { >> "i686-linux-gnu", "i686-pc-linux-gnu", "i486-linux-gnu", >> "i386-linux-gnu", >> "i386-redhat-linux6E", "i686-redhat-linux", "i586-redhat-linux", >> "i386-redhat-linux", "i586-suse-linux", "i486-slackware-linux", >> - "i686-montavista-linux" >> + "i686-montavista-linux", "i686-linux-android" >> }; >> >> static const char *const MIPSLibDirs[] = { "/lib" }; >> Index: lib/Driver/Tools.cpp >> =================================================================== >> --- lib/Driver/Tools.cpp >> +++ lib/Driver/Tools.cpp >> @@ -6278,9 +6278,12 @@ >> >> static StringRef getLinuxDynamicLinker(const ArgList &Args, >> const toolchains::Linux >> &ToolChain) { >> - if (ToolChain.getTriple().getEnvironment() == llvm::Triple::Android) >> - return "/system/bin/linker"; >> - else if (ToolChain.getArch() == llvm::Triple::x86) >> + if (ToolChain.getTriple().getEnvironment() == llvm::Triple::Android) { >> + if (ToolChain.getTriple().isArch64Bit()) >> + return "/system/bin/linker64"; >> + else >> + return "/system/bin/linker"; >> + } else if (ToolChain.getArch() == llvm::Triple::x86) >> return "/lib/ld-linux.so.2"; >> else if (ToolChain.getArch() == llvm::Triple::aarch64) >> return "/lib/ld-linux-aarch64.so.1"; >> Index: test/Driver/clang-translation.c >> =================================================================== >> --- test/Driver/clang-translation.c >> +++ test/Driver/clang-translation.c >> @@ -206,8 +206,14 @@ >> // AMD64-MINGW: "amd64--mingw32" >> // AMD64-MINGW: "-munwind-tables" >> >> -// RUN: %clang -target i386-linux-android -### -S %s 2>&1 \ >> +// RUN: %clang -target i686-linux-android -### -S %s 2>&1 \ >> // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ >> // RUN: | FileCheck --check-prefix=ANDROID-X86 %s >> // ANDROID-X86: clang >> // ANDROID-X86: "-target-cpu" "core2" >> + >> +// RUN: %clang -target x86_64-linux-android -### -S %s 2>&1 \ >> +// RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ >> +// RUN: | FileCheck --check-prefix=ANDROID-X86_64 %s >> +// ANDROID-X86_64: clang >> +// ANDROID-X86_64: "-target-cpu" "core2" >> Index: test/Driver/linux-ld.c >> =================================================================== >> --- test/Driver/linux-ld.c >> +++ test/Driver/linux-ld.c >> @@ -516,7 +516,11 @@ >> // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ >> // RUN: | FileCheck --check-prefix=CHECK-ANDROID %s >> // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ >> -// RUN: --target=i386-linux-android \ >> +// RUN: --target=i686-linux-android \ >> +// RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ >> +// RUN: | FileCheck --check-prefix=CHECK-ANDROID %s >> +// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ >> +// RUN: --target=x86_64-linux-android \ >> // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ >> // RUN: | FileCheck --check-prefix=CHECK-ANDROID %s >> // CHECK-ANDROID: "{{.*}}ld{{(.exe)?}}" "--sysroot=[[SYSROOT:[^"]+]]" >> @@ -543,7 +547,12 @@ >> // RUN: -shared \ >> // RUN: | FileCheck --check-prefix=CHECK-ANDROID-SO %s >> // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ >> -// RUN: --target=i386-linux-android \ >> +// RUN: --target=i686-linux-android \ >> +// RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ >> +// RUN: -shared \ >> +// RUN: | FileCheck --check-prefix=CHECK-ANDROID-SO %s >> +// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ >> +// RUN: --target=x86_64-linux-android \ >> // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ >> // RUN: -shared \ >> // RUN: | FileCheck --check-prefix=CHECK-ANDROID-SO %s >> @@ -572,7 +581,12 @@ >> // RUN: -static \ >> // RUN: | FileCheck --check-prefix=CHECK-ANDROID-STATIC %s >> // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ >> -// RUN: --target=i386-linux-android \ >> +// RUN: --target=i686-linux-android \ >> +// RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ >> +// RUN: -static \ >> +// RUN: | FileCheck --check-prefix=CHECK-ANDROID-STATIC %s >> +// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ >> +// RUN: --target=x86-linux-android \ >> // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ >> // RUN: -static \ >> // RUN: | FileCheck --check-prefix=CHECK-ANDROID-STATIC %s >> @@ -600,7 +614,12 @@ >> // RUN: -pie \ >> // RUN: | FileCheck --check-prefix=CHECK-ANDROID-PIE %s >> // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ >> -// RUN: --target=i386-linux-android \ >> +// RUN: --target=i686-linux-android \ >> +// RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ >> +// RUN: -pie \ >> +// RUN: | FileCheck --check-prefix=CHECK-ANDROID-PIE %s >> +// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ >> +// RUN: --target=x86_64-linux-android \ >> // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ >> // RUN: -pie \ >> // RUN: | FileCheck --check-prefix=CHECK-ANDROID-PIE %s >> > > > > -- > Alexey Volkov > Intel Corporation > -- Alexey Volkov Intel Corporation
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
