clang
7.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/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 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 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 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) |
|
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(), findMipsImgMultilibs(), and findRISCVMultilibs().
|
static |
Definition at line 1358 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 1435 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 950 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 859 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 1193 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 1021 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 989 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 1400 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 1628 of file Gnu.cpp.
Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::init().
|
static |
Definition at line 231 of file Gnu.cpp.
References clang::driver::tools::mips::hasMipsAbiArg().
Referenced by clang::driver::tools::gnutools::Linker::ConstructJob().
|
static |
Definition at line 285 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 846 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 841 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 837 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 851 of file Gnu.cpp.
Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::getBiarchSibling().
|
static |
Definition at line 812 of file Gnu.cpp.
Referenced by findMipsImgMultilibs().
|
static |
Definition at line 855 of file Gnu.cpp.
Referenced by findAndroidArmMultilibs(), findMipsCsMultilibs(), findMipsImgMultilibs(), findMipsMtiMultilibs(), findMipsMuslMultilibs(), and findRISCVMultilibs().
|
static |
Definition at line 49 of file Gnu.cpp.
Referenced by clang::driver::tools::gnutools::Assembler::ConstructJob().