clang  3.7.0
Classes | Namespaces | Enumerations | Functions
Tools.h File Reference
#include "clang/Basic/VersionTuple.h"
#include "clang/Driver/Tool.h"
#include "clang/Driver/Types.h"
#include "clang/Driver/Util.h"
#include "llvm/ADT/Triple.h"
#include "llvm/Option/Option.h"
#include "llvm/Support/Compiler.h"
Include dependency graph for Tools.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  clang::driver::tools::Clang
 Clang compiler tool. More...
 
class  clang::driver::tools::ClangAs
 Clang integrated assembler tool. More...
 
class  clang::driver::tools::GnuTool
 Base class for all GNU tools that provide the same behavior when it comes to response files support. More...
 
class  clang::driver::tools::gcc::Common
 
class  clang::driver::tools::gcc::Preprocessor
 
class  clang::driver::tools::gcc::Compiler
 
class  clang::driver::tools::gcc::Linker
 
class  clang::driver::tools::hexagon::Assembler
 
class  clang::driver::tools::hexagon::Linker
 
class  clang::driver::tools::cloudabi::Linker
 
class  clang::driver::tools::darwin::MachOTool
 
class  clang::driver::tools::darwin::Assembler
 
class  clang::driver::tools::darwin::Linker
 
class  clang::driver::tools::darwin::Lipo
 
class  clang::driver::tools::darwin::Dsymutil
 
class  clang::driver::tools::darwin::VerifyDebug
 
class  clang::driver::tools::openbsd::Assembler
 
class  clang::driver::tools::openbsd::Linker
 
class  clang::driver::tools::bitrig::Assembler
 
class  clang::driver::tools::bitrig::Linker
 
class  clang::driver::tools::freebsd::Assembler
 
class  clang::driver::tools::freebsd::Linker
 
class  clang::driver::tools::netbsd::Assembler
 
class  clang::driver::tools::netbsd::Linker
 
class  clang::driver::tools::gnutools::Assembler
 
class  clang::driver::tools::gnutools::Linker
 
class  clang::driver::tools::nacltools::AssemblerARM
 
class  clang::driver::tools::nacltools::Linker
 
class  clang::driver::tools::minix::Assembler
 
class  clang::driver::tools::minix::Linker
 
class  clang::driver::tools::solaris::Assembler
 
class  clang::driver::tools::solaris::Linker
 
class  clang::driver::tools::dragonfly::Assembler
 
class  clang::driver::tools::dragonfly::Linker
 
class  clang::driver::tools::visualstudio::Linker
 
class  clang::driver::tools::visualstudio::Compiler
 
class  clang::driver::tools::MinGW::Assembler
 
class  clang::driver::tools::MinGW::Linker
 
class  clang::driver::tools::XCore::Assembler
 
class  clang::driver::tools::XCore::Linker
 
class  clang::driver::tools::CrossWindows::Assembler
 
class  clang::driver::tools::CrossWindows::Linker
 
class  clang::driver::tools::SHAVE::Compiler
 
class  clang::driver::tools::SHAVE::Assembler
 

Namespaces

 clang
 
 clang::driver
 
 clang::driver::toolchains
 
 clang::driver::tools
 
 clang::driver::tools::visualstudio
 Visual studio tools.
 
 clang::driver::tools::gcc
 gcc - Generic GCC tool implementations.
 
 clang::driver::tools::hexagon
 
 clang::driver::tools::arm
 
 clang::driver::tools::mips
 
 clang::driver::tools::ppc
 
 clang::driver::tools::cloudabi
 cloudabi – Directly call GNU Binutils linker
 
 clang::driver::tools::darwin
 
 clang::driver::tools::openbsd
 openbsd – Directly call GNU Binutils assembler and linker
 
 clang::driver::tools::bitrig
 bitrig – Directly call GNU Binutils assembler and linker
 
 clang::driver::tools::freebsd
 freebsd – Directly call GNU Binutils assembler and linker
 
 clang::driver::tools::netbsd
 netbsd – Directly call GNU Binutils assembler and linker
 
 clang::driver::tools::gnutools
 Directly call GNU Binutils' assembler and linker.
 
 clang::driver::tools::nacltools
 
 clang::driver::tools::minix
 minix – Directly call GNU Binutils assembler and linker
 
 clang::driver::tools::solaris
 solaris – Directly call Solaris assembler and linker
 
 clang::driver::tools::dragonfly
 dragonfly – Directly call GNU Binutils assembler and linker
 
 clang::driver::tools::MinGW
 MinGW – Directly call GNU Binutils assembler and linker.
 
 clang::driver::tools::XCore
 
 clang::driver::tools::CrossWindows
 
 clang::driver::tools::SHAVE
 SHAVE tools – Directly call moviCompile and moviAsm.
 

Enumerations

enum  clang::driver::tools::mips::NanEncoding { clang::driver::tools::mips::NanLegacy = 1, clang::driver::tools::mips::Nan2008 = 2 }
 

Functions

SmallString< 128 > clang::driver::tools::getCompilerRT (const ToolChain &TC, StringRef Component, bool Shared=false)
 
std::string clang::driver::tools::arm::getARMTargetCPU (StringRef CPU, StringRef Arch, const llvm::Triple &Triple)
 getARMTargetCPU - Get the (LLVM) name of the ARM cpu we are targeting. More...
 
const std::string clang::driver::tools::arm::getARMArch (StringRef Arch, const llvm::Triple &Triple)
 
const char * clang::driver::tools::arm::getARMCPUForMArch (StringRef Arch, const llvm::Triple &Triple)
 Get the (LLVM) name of the minimum ARM CPU for the arch we are targeting. More...
 
const char * clang::driver::tools::arm::getLLVMArchSuffixForARM (StringRef CPU, StringRef Arch)
 
void clang::driver::tools::arm::appendEBLinkFlags (const llvm::opt::ArgList &Args, ArgStringList &CmdArgs, const llvm::Triple &Triple)
 
NanEncoding clang::driver::tools::mips::getSupportedNanEncoding (StringRef &CPU)
 
void clang::driver::tools::mips::getMipsCPUAndABI (const llvm::opt::ArgList &Args, const llvm::Triple &Triple, StringRef &CPUName, StringRef &ABIName)
 
bool clang::driver::tools::mips::hasMipsAbiArg (const llvm::opt::ArgList &Args, const char *Value)
 
bool clang::driver::tools::mips::isUCLibc (const llvm::opt::ArgList &Args)
 
bool clang::driver::tools::mips::isNaN2008 (const llvm::opt::ArgList &Args, const llvm::Triple &Triple)
 
bool clang::driver::tools::mips::isFPXXDefault (const llvm::Triple &Triple, StringRef CPUName, StringRef ABIName, StringRef FloatABI)
 
bool clang::driver::tools::mips::shouldUseFPXX (const llvm::opt::ArgList &Args, const llvm::Triple &Triple, StringRef CPUName, StringRef ABIName, StringRef FloatABI)
 
bool clang::driver::tools::ppc::hasPPCAbiArg (const llvm::opt::ArgList &Args, const char *Value)
 
llvm::Triple::ArchType clang::driver::tools::darwin::getArchTypeForMachOArchName (StringRef Str)
 
void clang::driver::tools::darwin::setTripleTypeForMachOArchName (llvm::Triple &T, StringRef Str)
 
VersionTuple clang::driver::tools::visualstudio::getMSVCVersion (const Driver *D, const llvm::Triple &Triple, const llvm::opt::ArgList &Args, bool IsWindowsMSVC)
 
StringRef clang::driver::tools::arm::getARMFloatABI (const Driver &D, const llvm::opt::ArgList &Args, const llvm::Triple &Triple)