clang
8.0.0
|
#include "Gnu.h"
#include "Arch/ARM.h"
#include "Arch/Mips.h"
#include "Arch/PPC.h"
#include "Arch/RISCV.h"
#include "Arch/Sparc.h"
#include "Arch/SystemZ.h"
#include "CommonArgs.h"
#include "Linux.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 "llvm/Support/VirtualFileSystem.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 | isArmBigEndian (const llvm::Triple &Triple, const ArgList &Args) |
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 | isMipsEL (llvm::Triple::ArchType Arch) |
static bool | isMips16 (const ArgList &Args) |
static bool | isMicroMips (const ArgList &Args) |
static bool | isRISCV (llvm::Triple::ArchType Arch) |
static bool | isMSP430 (llvm::Triple::ArchType Arch) |
static Multilib | makeMultilib (StringRef commonSuffix) |
static bool | findMipsCsMultilibs (const Multilib::flags_list &Flags, FilterNonExistent &NonExistent, DetectedMultilibs &Result) |
static bool | findMipsAndroidMultilibs (llvm::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 | findMSP430Multilibs (const Driver &D, const llvm::Triple &TargetTriple, StringRef Path, const ArgList &Args, DetectedMultilibs &Result) |
static void | findRISCVMultilibs (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, llvm::StringRef SysRoot) |
|
static |
Flag
must be a flag accepted by the driver with its leading '-' removed,
Definition at line 851 of file Gnu.cpp.
Referenced by findAndroidArmMultilibs(), findBiarchMultilibs(), findMipsImgMultilibs(), and findRISCVMultilibs().
|
static |
Definition at line 1388 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 1485 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 980 of file Gnu.cpp.
References clang::driver::MultilibSet::Either(), 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 889 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 1223 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(), 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 1051 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 1019 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 1430 of file Gnu.cpp.
References clang::driver::MultilibSet::FilterOut(), clang::driver::Driver::getVFS(), makeMultilib(), clang::driver::DetectedMultilibs::Multilibs, clang::driver::MultilibSet::push_back(), clang::driver::MultilibSet::select(), and clang::driver::DetectedMultilibs::SelectedMultilib.
Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::getBiarchSibling().
|
static |
Definition at line 1450 of file Gnu.cpp.
References addMultilibFlag(), clang::driver::MultilibSet::Either(), clang::driver::Multilib::flag(), clang::driver::tools::riscv::getRISCVABI(), 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 39 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 1678 of file Gnu.cpp.
Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::init().
|
static |
Definition at line 255 of file Gnu.cpp.
References clang::driver::tools::mips::hasMipsAbiArg(), and isArmBigEndian().
Referenced by clang::driver::tools::gnutools::Linker::ConstructJob().
|
static |
Definition at line 310 of file Gnu.cpp.
References clang::driver::toolchains::Linux::isPIEDefault().
Referenced by clang::driver::tools::gnutools::Linker::ConstructJob().
|
static |
Definition at line 235 of file Gnu.cpp.
Referenced by clang::driver::tools::gnutools::Assembler::ConstructJob(), clang::driver::tools::gnutools::Linker::ConstructJob(), and getLDMOption().
|
static |
Definition at line 859 of file Gnu.cpp.
Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::getBiarchSibling().
|
static |
Definition at line 872 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 867 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 863 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 881 of file Gnu.cpp.
Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::getBiarchSibling().
|
static |
Definition at line 877 of file Gnu.cpp.
Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::getBiarchSibling().
|
static |
Definition at line 838 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 885 of file Gnu.cpp.
Referenced by findAndroidArmMultilibs(), findMipsCsMultilibs(), findMipsImgMultilibs(), findMipsMtiMultilibs(), findMipsMuslMultilibs(), findMSP430Multilibs(), and findRISCVMultilibs().
|
static |
Definition at line 49 of file Gnu.cpp.
Referenced by clang::driver::tools::gnutools::Assembler::ConstructJob().