clang
6.0.0
|
#include "Gnu.h"
#include "Linux.h"
#include "Arch/ARM.h"
#include "Arch/Mips.h"
#include "Arch/PPC.h"
#include "Arch/Sparc.h"
#include "Arch/SystemZ.h"
#include "CommonArgs.h"
#include "clang/Basic/VirtualFileSystem.h"
#include "clang/Config/config.h"
#include "clang/Driver/Compilation.h"
#include "clang/Driver/Driver.h"
#include "clang/Driver/DriverDiagnostic.h"
#include "clang/Driver/Options.h"
#include "clang/Driver/Tool.h"
#include "llvm/Option/ArgList.h"
#include "llvm/Support/CodeGen.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/TargetParser.h"
#include <system_error>
Go to the source code of this file.
Functions | |
static bool | forwardToGCC (const Option &O) |
static void | normalizeCPUNamesForAssembler (const ArgList &Args, ArgStringList &CmdArgs) |
static bool | addXRayRuntime (const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs) |
static void | linkXRayRuntimeDeps (const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs) |
static const char * | getLDMOption (const llvm::Triple &T, const ArgList &Args) |
static bool | getPIE (const ArgList &Args, const toolchains::Linux &ToolChain) |
static bool | isSoftFloatABI (const ArgList &Args) |
static void | addMultilibFlag (bool Enabled, const char *const Flag, std::vector< std::string > &Flags) |
Flag must be a flag accepted by the driver with its leading '-' removed, More... | |
static bool | isArmOrThumbArch (llvm::Triple::ArchType Arch) |
static bool | isMips32 (llvm::Triple::ArchType Arch) |
static bool | isMips64 (llvm::Triple::ArchType Arch) |
static bool | isMipsEL (llvm::Triple::ArchType Arch) |
static bool | isMips16 (const ArgList &Args) |
static bool | isMicroMips (const ArgList &Args) |
static Multilib | makeMultilib (StringRef commonSuffix) |
static bool | findMipsCsMultilibs (const Multilib::flags_list &Flags, FilterNonExistent &NonExistent, DetectedMultilibs &Result) |
static bool | findMipsAndroidMultilibs (vfs::FileSystem &VFS, StringRef Path, const Multilib::flags_list &Flags, FilterNonExistent &NonExistent, DetectedMultilibs &Result) |
static bool | findMipsMuslMultilibs (const Multilib::flags_list &Flags, FilterNonExistent &NonExistent, DetectedMultilibs &Result) |
static bool | findMipsMtiMultilibs (const Multilib::flags_list &Flags, FilterNonExistent &NonExistent, DetectedMultilibs &Result) |
static bool | findMipsImgMultilibs (const Multilib::flags_list &Flags, FilterNonExistent &NonExistent, DetectedMultilibs &Result) |
static void | findAndroidArmMultilibs (const Driver &D, const llvm::Triple &TargetTriple, StringRef Path, const ArgList &Args, DetectedMultilibs &Result) |
static bool | findBiarchMultilibs (const Driver &D, const llvm::Triple &TargetTriple, StringRef Path, const ArgList &Args, bool NeedsBiarchSuffix, DetectedMultilibs &Result) |
static llvm::StringRef | getGCCToolchainDir (const ArgList &Args) |
|
static |
Flag
must be a flag accepted by the driver with its leading '-' removed,
Definition at line 825 of file Gnu.cpp.
Referenced by findAndroidArmMultilibs(), findBiarchMultilibs(), and findMipsImgMultilibs().
|
static |
Definition at line 223 of file Gnu.cpp.
References clang::driver::ToolChain::getCompilerRTArgString().
Referenced by clang::driver::tools::gnutools::Linker::ConstructJob().
|
static |
Definition at line 1362 of file Gnu.cpp.
References addMultilibFlag(), clang::driver::MultilibSet::Either(), clang::driver::MultilibSet::FilterOut(), clang::driver::Multilib::flag(), clang::driver::Driver::getVFS(), makeMultilib(), clang::driver::DetectedMultilibs::Multilibs, clang::driver::MultilibSet::select(), and clang::driver::DetectedMultilibs::SelectedMultilib.
Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::getBiarchSibling().
|
static |
Definition at line 1404 of file Gnu.cpp.
References addMultilibFlag(), clang::driver::DetectedMultilibs::BiarchSibling, clang::Default, clang::driver::MultilibSet::FilterOut(), clang::driver::Multilib::flag(), clang::driver::Multilib::gccSuffix(), clang::driver::Driver::getVFS(), clang::driver::DetectedMultilibs::Multilibs, clang::driver::MultilibSet::push_back(), clang::driver::MultilibSet::select(), clang::driver::DetectedMultilibs::SelectedMultilib, and clang::UNKNOWN.
Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::getBiarchSibling().
|
static |
Definition at line 954 of file Gnu.cpp.
References clang::driver::MultilibSet::Either(), clang::vfs::FileSystem::exists(), clang::driver::MultilibSet::FilterOut(), clang::driver::MultilibSet::Maybe(), clang::driver::DetectedMultilibs::Multilibs, clang::driver::MultilibSet::select(), and clang::driver::DetectedMultilibs::SelectedMultilib.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 863 of file Gnu.cpp.
References clang::driver::DetectedMultilibs::BiarchSibling, clang::driver::MultilibSet::Either(), clang::driver::MultilibSet::FilterOut(), clang::driver::Multilib::flag(), clang::driver::Multilib::gccSuffix(), clang::driver::Multilib::includeSuffix(), makeMultilib(), clang::driver::MultilibSet::Maybe(), clang::driver::DetectedMultilibs::Multilibs, clang::driver::DetectedMultilibs::SelectedMultilib, clang::driver::MultilibSet::setIncludeDirsCallback(), and clang::driver::MultilibSet::size().
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 1197 of file Gnu.cpp.
References addMultilibFlag(), clang::driver::DetectedMultilibs::BiarchSibling, clang::Default, clang::driver::MultilibSet::Either(), clang::driver::MultilibSet::FilterOut(), findMipsAndroidMultilibs(), findMipsCsMultilibs(), findMipsMtiMultilibs(), clang::driver::findMIPSMultilibs(), findMipsMuslMultilibs(), clang::driver::Multilib::flag(), clang::driver::Multilib::gccSuffix(), clang::driver::tools::mips::getMipsCPUAndABI(), clang::driver::Driver::getVFS(), clang::driver::Multilib::includeSuffix(), isMicroMips(), isMips16(), isMips32(), isMips64(), isMipsEL(), clang::driver::tools::mips::isNaN2008(), isSoftFloatABI(), clang::driver::tools::mips::isUCLibc(), makeMultilib(), clang::driver::MultilibSet::Maybe(), clang::driver::DetectedMultilibs::Multilibs, clang::driver::Multilib::osSuffix(), clang::driver::MultilibSet::push_back(), clang::driver::MultilibSet::select(), clang::driver::DetectedMultilibs::SelectedMultilib, and clang::driver::MultilibSet::setIncludeDirsCallback().
|
static |
Definition at line 1025 of file Gnu.cpp.
References clang::driver::MultilibSet::Either(), clang::driver::MultilibSet::FilterOut(), clang::driver::Multilib::flag(), clang::driver::Multilib::gccSuffix(), clang::driver::Multilib::includeSuffix(), makeMultilib(), clang::driver::MultilibSet::Maybe(), clang::driver::DetectedMultilibs::Multilibs, clang::driver::Multilib::osSuffix(), clang::driver::DetectedMultilibs::SelectedMultilib, and clang::driver::MultilibSet::setIncludeDirsCallback().
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 993 of file Gnu.cpp.
References clang::driver::MultilibSet::Either(), clang::driver::Multilib::flag(), makeMultilib(), clang::driver::DetectedMultilibs::Multilibs, clang::driver::Multilib::osSuffix(), clang::driver::MultilibSet::select(), clang::driver::DetectedMultilibs::SelectedMultilib, and clang::driver::MultilibSet::setIncludeDirsCallback().
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 38 of file Gnu.cpp.
References clang::driver::options::DriverOption, and clang::driver::options::LinkerInput.
Referenced by clang::driver::tools::gcc::Common::ConstructJob().
|
static |
Definition at line 1571 of file Gnu.cpp.
Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::init().
|
static |
Definition at line 252 of file Gnu.cpp.
References clang::driver::tools::mips::hasMipsAbiArg().
Referenced by clang::driver::tools::gnutools::Linker::ConstructJob().
|
static |
Definition at line 302 of file Gnu.cpp.
References clang::driver::toolchains::Linux::isPIEDefault().
Referenced by clang::driver::tools::gnutools::Linker::ConstructJob().
|
static |
Definition at line 833 of file Gnu.cpp.
Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::getBiarchSibling().
|
static |
Definition at line 854 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 849 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 837 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 841 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 845 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 812 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 240 of file Gnu.cpp.
References clang::driver::ToolChain::getTriple().
Referenced by clang::driver::tools::gnutools::Linker::ConstructJob().
|
static |
Definition at line 859 of file Gnu.cpp.
Referenced by findAndroidArmMultilibs(), findMipsCsMultilibs(), findMipsImgMultilibs(), findMipsMtiMultilibs(), and findMipsMuslMultilibs().
|
static |
Definition at line 48 of file Gnu.cpp.
Referenced by clang::driver::tools::gnutools::Assembler::ConstructJob().