Sure, why not. -bw
On May 30, 2013, at 7:03 AM, Nathan Froyd <[email protected]> wrote: > Hi Evgeniy and Bill, > > Can this patch be backported to 3.3, please? It fixes startup crashes with > asan and is a regression from 3.2. > > Thanks, > -Nathan > > ----- Original Message ----- >> Author: eugenis >> Date: Fri May 24 09:28:03 2013 >> New Revision: 182645 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=182645&view=rev >> Log: >> Add -lrt to sanitizer link arguments. >> >> Sanitizer runtime intercepts functions from librt. Not doing this >> will fail >> if the librt dependency is not present at program startup (ex. comes >> from a >> dlopen()ed library). >> >> Modified: >> cfe/trunk/lib/Driver/Tools.cpp >> cfe/trunk/test/Driver/sanitizer-ld.c >> >> Modified: cfe/trunk/lib/Driver/Tools.cpp >> URL: >> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Tools.cpp?rev=182645&r1=182644&r2=182645&view=diff >> ============================================================================== >> --- cfe/trunk/lib/Driver/Tools.cpp (original) >> +++ cfe/trunk/lib/Driver/Tools.cpp Fri May 24 09:28:03 2013 >> @@ -1679,6 +1679,7 @@ static void addSanitizerRTLinkFlagsLinux >> LibSanitizerArgs.begin(), LibSanitizerArgs.end()); >> >> CmdArgs.push_back("-lpthread"); >> + CmdArgs.push_back("-lrt"); >> CmdArgs.push_back("-ldl"); >> >> // If possible, use a dynamic symbols file to export the symbols >> from the >> >> Modified: cfe/trunk/test/Driver/sanitizer-ld.c >> URL: >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/sanitizer-ld.c?rev=182645&r1=182644&r2=182645&view=diff >> ============================================================================== >> --- cfe/trunk/test/Driver/sanitizer-ld.c (original) >> +++ cfe/trunk/test/Driver/sanitizer-ld.c Fri May 24 09:28:03 2013 >> @@ -10,6 +10,7 @@ >> // CHECK-ASAN-LINUX-NOT: "-lc" >> // CHECK-ASAN-LINUX: libclang_rt.asan-i386.a" >> // CHECK-ASAN-LINUX: "-lpthread" >> +// CHECK-ASAN-LINUX: "-lrt" >> // CHECK-ASAN-LINUX: "-ldl" >> // CHECK-ASAN-LINUX-NOT: "-export-dynamic" >> // CHECK-ASAN-LINUX: >> "--dynamic-list={{.*}}libclang_rt.asan-i386.a.syms" >> @@ -24,6 +25,7 @@ >> // CHECK-ASAN-LINUX-CXX-NOT: "-lc" >> // CHECK-ASAN-LINUX-CXX: "-whole-archive" >> "{{.*}}libclang_rt.asan-i386.a" "-no-whole-archive" >> // CHECK-ASAN-LINUX-CXX: "-lpthread" >> +// CHECK-ASAN-LINUX-CXX: "-lrt" >> // CHECK-ASAN-LINUX-CXX: "-ldl" >> // CHECK-ASAN-LINUX-CXX: "-export-dynamic" >> // CHECK-ASAN-LINUX-CXX-NOT: "--dynamic-list" >> @@ -70,6 +72,7 @@ >> // CHECK-TSAN-LINUX-CXX-NOT: stdc++ >> // CHECK-TSAN-LINUX-CXX: "-whole-archive" >> "{{.*}}libclang_rt.tsan-x86_64.a" "-no-whole-archive" >> // CHECK-TSAN-LINUX-CXX: "-lpthread" >> +// CHECK-TSAN-LINUX-CXX: "-lrt" >> // CHECK-TSAN-LINUX-CXX: "-ldl" >> // CHECK-TSAN-LINUX-CXX-NOT: "-export-dynamic" >> // CHECK-TSAN-LINUX-CXX: >> "--dynamic-list={{.*}}libclang_rt.tsan-x86_64.a.syms" >> @@ -85,6 +88,7 @@ >> // CHECK-MSAN-LINUX-CXX-NOT: stdc++ >> // CHECK-MSAN-LINUX-CXX: "-whole-archive" >> "{{.*}}libclang_rt.msan-x86_64.a" "-no-whole-archive" >> // CHECK-MSAN-LINUX-CXX: "-lpthread" >> +// CHECK-MSAN-LINUX-CXX: "-lrt" >> // CHECK-MSAN-LINUX-CXX: "-ldl" >> // CHECK-MSAN-LINUX-CXX-NOT: "-export-dynamic" >> // CHECK-MSAN-LINUX-CXX: >> "--dynamic-list={{.*}}libclang_rt.msan-x86_64.a.syms" >> >> >> _______________________________________________ >> cfe-commits mailing list >> [email protected] >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits >> _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
