clang API Documentation
#include <ToolChains.h>
Public Member Functions | |
CrossWindowsToolChain (const Driver &D, const llvm::Triple &T, const llvm::opt::ArgList &Args) | |
bool | IsIntegratedAssemblerDefault () const override |
bool | IsUnwindTablesDefault () const override |
bool | isPICDefault () const override |
Test whether this toolchain defaults to PIC. | |
bool | isPIEDefault () const override |
Test whether this toolchain defaults to PIE. | |
bool | isPICDefaultForced () const override |
Tests whether this toolchain forces its default for PIC, PIE or non-PIC. If this returns true, any PIC related flags should be ignored and instead the results of isPICDefault() and isPIEDefault() are used exclusively. | |
unsigned int | GetDefaultStackProtectorLevel (bool KernelOrKext) const override |
void | AddClangSystemIncludeArgs (const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args) const override |
Add the clang cc1 arguments for system include paths. | |
void | AddClangCXXStdlibIncludeArgs (const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args) const override |
void | AddCXXStdlibLibArgs (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs) const override |
Protected Member Functions | |
Tool * | buildLinker () const override |
Tool * | buildAssembler () const override |
Definition at line 766 of file ToolChains.h.
CrossWindowsToolChain::CrossWindowsToolChain | ( | const Driver & | D, |
const llvm::Triple & | T, | ||
const llvm::opt::ArgList & | Args | ||
) |
Definition at line 18 of file CrossWindowsToolChain.cpp.
References clang::driver::ToolChain::CST_Libstdcxx, clang::driver::ToolChain::GetCXXStdlibType(), clang::driver::ToolChain::getFilePaths(), and clang::driver::Driver::SysRoot.
void CrossWindowsToolChain::AddClangCXXStdlibIncludeArgs | ( | const llvm::opt::ArgList & | DriverArgs, |
llvm::opt::ArgStringList & | CC1Args | ||
) | const [override, virtual] |
AddClangCXXStdlibIncludeArgs - Add the clang -cc1 level arguments to set the include paths to use for the given C++ standard library type.
Reimplemented from clang::driver::ToolChain.
Definition at line 69 of file CrossWindowsToolChain.cpp.
References clang::driver::ToolChain::addSystemInclude(), clang::driver::ToolChain::CST_Libcxx, clang::driver::ToolChain::CST_Libstdcxx, clang::driver::ToolChain::GetCXXStdlibType(), clang::driver::ToolChain::getDriver(), clang::driver::ToolChain::getTriple(), and clang::driver::Driver::SysRoot.
void CrossWindowsToolChain::AddClangSystemIncludeArgs | ( | const llvm::opt::ArgList & | DriverArgs, |
llvm::opt::ArgStringList & | CC1Args | ||
) | const [override, virtual] |
Add the clang cc1 arguments for system include paths.
This routine is responsible for adding the necessary cc1 arguments to include headers from standard system header directories.
Reimplemented from clang::driver::ToolChain.
Definition at line 51 of file CrossWindowsToolChain.cpp.
References clang::driver::ToolChain::addExternCSystemInclude(), clang::driver::ToolChain::addSystemInclude(), clang::driver::ToolChain::getDriver(), clang::driver::Driver::ResourceDir, and clang::driver::Driver::SysRoot.
void CrossWindowsToolChain::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 93 of file CrossWindowsToolChain.cpp.
References clang::driver::ToolChain::CST_Libcxx, clang::driver::ToolChain::CST_Libstdcxx, and clang::driver::ToolChain::GetCXXStdlibType().
Tool * CrossWindowsToolChain::buildAssembler | ( | ) | const [override, protected, virtual] |
Reimplemented from clang::driver::toolchains::Generic_GCC.
Definition at line 114 of file CrossWindowsToolChain.cpp.
Tool * CrossWindowsToolChain::buildLinker | ( | ) | const [override, protected, virtual] |
Reimplemented from clang::driver::toolchains::Generic_GCC.
Definition at line 110 of file CrossWindowsToolChain.cpp.
unsigned int clang::driver::toolchains::CrossWindowsToolChain::GetDefaultStackProtectorLevel | ( | bool | KernelOrKext | ) | const [inline, override, virtual] |
GetDefaultStackProtectorLevel - Get the default stack protector level for this tool chain (0=off, 1=on, 2=strong, 3=all).
Reimplemented from clang::driver::ToolChain.
Definition at line 777 of file ToolChains.h.
bool clang::driver::toolchains::CrossWindowsToolChain::IsIntegratedAssemblerDefault | ( | ) | const [inline, override, virtual] |
IsIntegratedAssemblerDefault - Does this tool chain enable -integrated-as by default.
Reimplemented from clang::driver::toolchains::Generic_GCC.
Definition at line 771 of file ToolChains.h.
bool CrossWindowsToolChain::isPICDefault | ( | ) | const [override, virtual] |
Test whether this toolchain defaults to PIC.
Reimplemented from clang::driver::toolchains::Generic_GCC.
Definition at line 38 of file CrossWindowsToolChain.cpp.
References clang::driver::ToolChain::getArch().
bool CrossWindowsToolChain::isPICDefaultForced | ( | ) | const [override, virtual] |
Tests whether this toolchain forces its default for PIC, PIE or non-PIC. If this returns true, any PIC related flags should be ignored and instead the results of isPICDefault()
and isPIEDefault()
are used exclusively.
Reimplemented from clang::driver::toolchains::Generic_GCC.
Definition at line 46 of file CrossWindowsToolChain.cpp.
References clang::driver::ToolChain::getArch().
bool CrossWindowsToolChain::isPIEDefault | ( | ) | const [override, virtual] |
Test whether this toolchain defaults to PIE.
Reimplemented from clang::driver::toolchains::Generic_GCC.
Definition at line 42 of file CrossWindowsToolChain.cpp.
References clang::driver::ToolChain::getArch().
bool CrossWindowsToolChain::IsUnwindTablesDefault | ( | ) | const [override, virtual] |
IsUnwindTablesDefault - Does this tool chain use -funwind-tables by default.
Reimplemented from clang::driver::toolchains::Generic_GCC.
Definition at line 32 of file CrossWindowsToolChain.cpp.
References clang::driver::ToolChain::getArch().