[cfe-commits] r151648 - /cfe/trunk/lib/Driver/Tools.cpp

David Chisnall csdavec at swan.ac.uk
Tue Feb 28 11:15:06 PST 2012


Author: theraven
Date: Tue Feb 28 13:15:06 2012
New Revision: 151648

URL: http://llvm.org/viewvc/llvm-project?rev=151648&view=rev
Log:
It turns out -fno-cxa-atexit just produces broken code, so disable it on Solaris and we'll ship a __cxa_atexit implementation...


Modified:
    cfe/trunk/lib/Driver/Tools.cpp

Modified: cfe/trunk/lib/Driver/Tools.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Tools.cpp?rev=151648&r1=151647&r2=151648&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/Tools.cpp (original)
+++ cfe/trunk/lib/Driver/Tools.cpp Tue Feb 28 13:15:06 2012
@@ -2079,7 +2079,6 @@
     !Args.hasFlag(options::OPT_fuse_cxa_atexit, options::OPT_fno_use_cxa_atexit,
                   getToolChain().getTriple().getOS() != llvm::Triple::Cygwin &&
                   getToolChain().getTriple().getOS() != llvm::Triple::MinGW32 &&
-                  getToolChain().getTriple().getOS() != llvm::Triple::Solaris &&
                   getToolChain().getTriple().getArch() !=
                   llvm::Triple::hexagon))
     CmdArgs.push_back("-fno-use-cxa-atexit");
@@ -4252,6 +4251,7 @@
       CmdArgs.push_back(Args.MakeArgString(LibPath + "values-Xa.o"));
       CmdArgs.push_back(Args.MakeArgString(GCCLibPath + "crtbegin.o"));
     } else {
+      CmdArgs.push_back(Args.MakeArgString(LibPath + "cxa_finalize.o"));
       CmdArgs.push_back(Args.MakeArgString(LibPath + "crti.o"));
       CmdArgs.push_back(Args.MakeArgString(LibPath + "values-Xa.o"));
       CmdArgs.push_back(Args.MakeArgString(GCCLibPath + "crtbegin.o"));





More information about the cfe-commits mailing list