mirror of
https://github.com/intel/llvm.git
synced 2026-01-24 08:30:34 +08:00
It turns out -fno-cxa-atexit just produces broken code, so disable it on Solaris and we'll ship a __cxa_atexit implementation...
llvm-svn: 151648
This commit is contained in:
@@ -2079,7 +2079,6 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
|
||||
!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 @@ void solaris::Link::ConstructJob(Compilation &C, const JobAction &JA,
|
||||
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"));
|
||||
|
||||
Reference in New Issue
Block a user