From ea155f0153c92ebabf3f4452e14c3ce81be64776 Mon Sep 17 00:00:00 2001 From: Evgeniy Stepanov Date: Mon, 4 Jun 2012 11:15:05 +0000 Subject: Require -pie when linking with ASan on Android. llvm-svn: 157923 --- clang/lib/Driver/Tools.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'clang/lib/Driver/Tools.cpp') diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index 31626b39764..9a157efce77 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -1290,6 +1290,8 @@ static void addAsanRTLinux(const ToolChain &TC, const ArgList &Args, return; if(TC.getTriple().getEnvironment() == llvm::Triple::ANDROIDEABI) { if (!Args.hasArg(options::OPT_shared)) { + if (!Args.hasArg(options::OPT_pie)) + TC.getDriver().Diag(diag::err_drv_asan_android_requires_pie); // For an executable, we add a .preinit_array stub. CmdArgs.push_back("-u"); CmdArgs.push_back("__asan_preinit"); -- cgit v1.2.3