clang API Documentation
DarwinClang - The Darwin toolchain used by Clang. More...
#include <ToolChains.h>
Public Member Functions | |
DarwinClang (const Driver &D, const llvm::Triple &Triple, const llvm::opt::ArgList &Args) | |
Apple ToolChain Implementation | |
{ | |
void | AddLinkRuntimeLibArgs (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs) const override |
Add the linker arguments to link the compiler runtime library. | |
void | AddCXXStdlibLibArgs (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs) const override |
void | AddCCKextLibArgs (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs) const override |
virtual void | addClangWarningOptions (llvm::opt::ArgStringList &CC1Args) const override |
Add warning options that need to be passed to cc1 for this target. | |
void | AddLinkARCArgs (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs) const override |
Add the linker arguments to link the ARC runtime library. |
DarwinClang - The Darwin toolchain used by Clang.
Definition at line 471 of file ToolChains.h.
DarwinClang::DarwinClang | ( | const Driver & | D, |
const llvm::Triple & | Triple, | ||
const llvm::opt::ArgList & | Args | ||
) |
Definition at line 239 of file ToolChains.cpp.
void DarwinClang::AddCCKextLibArgs | ( | const llvm::opt::ArgList & | Args, |
llvm::opt::ArgStringList & | CmdArgs | ||
) | const [override, virtual] |
AddCCKextLibArgs - Add the system specific linker arguments to use for kernel extensions (Darwin-specific).
Reimplemented from clang::driver::ToolChain.
Definition at line 628 of file ToolChains.cpp.
References clang::driver::ToolChain::getArch(), clang::driver::ToolChain::getDriver(), clang::driver::ToolChain::getTriple(), clang::driver::toolchains::Darwin::isIPhoneOSVersionLT(), clang::driver::toolchains::Darwin::isTargetIOSSimulator(), clang::driver::toolchains::Darwin::isTargetIPhoneOS(), and P.
void DarwinClang::addClangWarningOptions | ( | llvm::opt::ArgStringList & | CC1Args | ) | const [override, virtual] |
Add warning options that need to be passed to cc1 for this target.
Reimplemented from clang::driver::ToolChain.
Definition at line 244 of file ToolChains.cpp.
References clang::driver::ToolChain::getTriple(), and clang::driver::toolchains::Darwin::isTargetMacOS().
void DarwinClang::AddCXXStdlibLibArgs | ( | const llvm::opt::ArgList & | Args, |
llvm::opt::ArgStringList & | CmdArgs | ||
) | const [override, virtual] |
AddCXXStdlibLibArgs - Add the system specific linker arguments to use for the given C++ standard library type.
Reimplemented from clang::driver::ToolChain.
Definition at line 582 of file ToolChains.cpp.
References clang::driver::ToolChain::CST_Libcxx, clang::driver::ToolChain::CST_Libstdcxx, clang::driver::ToolChain::GetCXXStdlibType(), and P.
Referenced by AddLinkRuntimeLibArgs().
void DarwinClang::AddLinkARCArgs | ( | const llvm::opt::ArgList & | Args, |
llvm::opt::ArgStringList & | CmdArgs | ||
) | const [override, virtual] |
Add the linker arguments to link the ARC runtime library.
Reimplemented from clang::driver::toolchains::MachO.
Definition at line 264 of file ToolChains.cpp.
References clang::driver::ToolChain::getArch(), clang::driver::toolchains::Darwin::getDefaultObjCRuntime(), clang::driver::ToolChain::getDriver(), clang::ObjCRuntime::hasNativeARC(), clang::ObjCRuntime::hasSubscripting(), isObjCAutoRefCount(), clang::driver::toolchains::Darwin::isTargetIOSSimulator(), clang::driver::toolchains::Darwin::isTargetIPhoneOS(), clang::driver::toolchains::Darwin::isTargetMacOS(), and P.
void DarwinClang::AddLinkRuntimeLibArgs | ( | const llvm::opt::ArgList & | Args, |
llvm::opt::ArgStringList & | CmdArgs | ||
) | const [override, virtual] |
Add the linker arguments to link the compiler runtime library.
Reimplemented from clang::driver::toolchains::MachO.
Definition at line 327 of file ToolChains.cpp.
References AddCXXStdlibLibArgs(), clang::driver::toolchains::MachO::AddLinkRuntimeLib(), clang::driver::Driver::Diag(), clang::driver::ToolChain::getArch(), clang::driver::ToolChain::getDriver(), clang::driver::ToolChain::GetRuntimeLibType(), clang::driver::ToolChain::getSanitizerArgs(), clang::driver::ToolChain::getTriple(), clang::driver::toolchains::Darwin::isIPhoneOSVersionLT(), clang::driver::toolchains::Darwin::isMacosxVersionLT(), clang::driver::toolchains::Darwin::isTargetIOSBased(), clang::driver::toolchains::Darwin::isTargetIOSSimulator(), clang::driver::toolchains::Darwin::isTargetIPhoneOS(), clang::driver::toolchains::Darwin::isTargetMacOS(), clang::driver::SanitizerArgs::needsAsanRt(), clang::driver::SanitizerArgs::needsUbsanRt(), and clang::driver::ToolChain::RLT_CompilerRT.