clang API Documentation
#include <ToolChains.h>


Classes | |
| class | GCCInstallationDetector |
| This is a class to find a viable GCC installation for Clang to use. More... | |
| struct | GCCVersion |
| Struct to store and manipulate GCC versions. More... | |
Public Member Functions | |
| Generic_GCC (const Driver &D, const llvm::Triple &Triple) | |
| ~Generic_GCC () | |
| virtual Tool & | SelectTool (const Compilation &C, const JobAction &JA, const ActionList &Inputs) const |
| virtual bool | IsUnwindTablesDefault () const |
| virtual const char * | GetDefaultRelocationModel () const |
| virtual const char * | GetForcedPicModel () const |
Protected Member Functions | |
ToolChain Implementation Helper Functions | |
| bool | isTarget64Bit () const |
| Check whether the target triple's architecture is 64-bits. | |
| bool | isTarget32Bit () const |
| Check whether the target triple's architecture is 32-bits. FIXME: This should likely do more than just negate the 64-bit query. | |
Protected Attributes | |
| GCCInstallationDetector | GCCInstallation |
| llvm::DenseMap< unsigned, Tool * > | Tools |
Generic_GCC - A tool chain using the 'gcc' command to perform all subcommands; this relies on gcc translating the majority of command line options.
Definition at line 28 of file ToolChains.h.
| Generic_GCC::Generic_GCC | ( | const Driver & | D, |
| const llvm::Triple & | Triple | ||
| ) |
Definition at line 1373 of file ToolChains.cpp.
References clang::driver::ToolChain::getDriver(), and clang::driver::ToolChain::getProgramPaths().
| Generic_GCC::~Generic_GCC | ( | ) |
Definition at line 1380 of file ToolChains.cpp.
References Tools.
| const char * Generic_GCC::GetDefaultRelocationModel | ( | ) | const [virtual] |
GetDefaultRelocationModel - Return the LLVM name of the default relocation model for this tool chain.
Implements clang::driver::ToolChain.
Reimplemented in clang::driver::toolchains::Darwin_Generic_GCC.
Definition at line 1435 of file ToolChains.cpp.
| const char * Generic_GCC::GetForcedPicModel | ( | ) | const [virtual] |
GetForcedPicModel - Return the LLVM name of the forced PIC model for this tool chain, or 0 if this tool chain does not force a particular PIC mode.
Implements clang::driver::ToolChain.
Definition at line 1439 of file ToolChains.cpp.
| bool clang::driver::toolchains::Generic_GCC::isTarget32Bit | ( | ) | const [inline, protected] |
Check whether the target triple's architecture is 32-bits. FIXME: This should likely do more than just negate the 64-bit query.
Definition at line 143 of file ToolChains.h.
| bool clang::driver::toolchains::Generic_GCC::isTarget64Bit | ( | ) | const [inline, protected] |
Check whether the target triple's architecture is 64-bits.
Definition at line 137 of file ToolChains.h.
| bool Generic_GCC::IsUnwindTablesDefault | ( | ) | const [virtual] |
IsUnwindTablesDefault - Does this tool chain use -funwind-tables by default.
Implements clang::driver::ToolChain.
Definition at line 1429 of file ToolChains.cpp.
References clang::driver::ToolChain::getArchName().
| Tool & Generic_GCC::SelectTool | ( | const Compilation & | C, |
| const JobAction & | JA, | ||
| const ActionList & | Inputs | ||
| ) | const [virtual] |
SelectTool - Choose a tool to use to handle the action
Implements clang::driver::ToolChain.
Reimplemented in clang::driver::toolchains::Linux, clang::driver::toolchains::DragonFly, clang::driver::toolchains::Minix, clang::driver::toolchains::NetBSD, clang::driver::toolchains::FreeBSD, clang::driver::toolchains::OpenBSD, and clang::driver::toolchains::AuroraUX.
Definition at line 1387 of file ToolChains.cpp.
References clang::driver::Action::AnalyzeJobClass, clang::driver::phases::Assemble, clang::driver::Action::AssembleJobClass, clang::driver::Action::BindArchClass, clang::driver::phases::Compile, clang::driver::Action::CompileJobClass, clang::driver::Action::DsymutilJobClass, clang::driver::ToolChain::getDriver(), clang::driver::Action::getKind(), clang::driver::ToolChain::getTriple(), clang::driver::Action::InputClass, clang::driver::phases::Link, clang::driver::Action::LinkJobClass, clang::driver::Action::LipoJobClass, clang::driver::phases::Precompile, clang::driver::Action::PrecompileJobClass, clang::driver::phases::Preprocess, clang::driver::Action::PreprocessJobClass, Tools, and clang::driver::Action::VerifyJobClass.
Definition at line 117 of file ToolChains.h.
Referenced by clang::driver::toolchains::Linux::AddClangCXXStdlibIncludeArgs(), and clang::driver::toolchains::Linux::Linux().
llvm::DenseMap<unsigned, Tool*> clang::driver::toolchains::Generic_GCC::Tools [mutable, protected] |
Definition at line 119 of file ToolChains.h.
Referenced by SelectTool(), clang::driver::toolchains::AuroraUX::SelectTool(), clang::driver::toolchains::OpenBSD::SelectTool(), clang::driver::toolchains::FreeBSD::SelectTool(), clang::driver::toolchains::NetBSD::SelectTool(), clang::driver::toolchains::Minix::SelectTool(), clang::driver::toolchains::DragonFly::SelectTool(), clang::driver::toolchains::Linux::SelectTool(), and ~Generic_GCC().