clang 20.0.0git
|
#include "BareMetal.h"
#include "CommonArgs.h"
#include "Gnu.h"
#include "clang/Driver/InputInfo.h"
#include "Arch/ARM.h"
#include "Arch/RISCV.h"
#include "clang/Driver/Compilation.h"
#include "clang/Driver/Driver.h"
#include "clang/Driver/DriverDiagnostic.h"
#include "clang/Driver/MultilibBuilder.h"
#include "clang/Driver/Options.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Option/ArgList.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/VirtualFileSystem.h"
#include "llvm/Support/raw_ostream.h"
#include <sstream>
Go to the source code of this file.
Functions | |
static bool | findRISCVMultilibs (const Driver &D, const llvm::Triple &TargetTriple, const ArgList &Args, DetectedMultilibs &Result) |
static bool | isARMBareMetal (const llvm::Triple &Triple) |
Is the triple {arm,armeb,thumb,thumbeb}-none-none-{eabi,eabihf} ? | |
static bool | isAArch64BareMetal (const llvm::Triple &Triple) |
Is the triple {aarch64.aarch64_be}-none-elf? | |
static bool | isRISCVBareMetal (const llvm::Triple &Triple) |
static bool | isPPCBareMetal (const llvm::Triple &Triple) |
Is the triple powerpc[64][le]-*-none-eabi? | |
static void | findMultilibsFromYAML (const ToolChain &TC, const Driver &D, StringRef MultilibPath, const ArgList &Args, DetectedMultilibs &Result) |
static std::string | computeBaseSysRoot (const Driver &D, const llvm::Triple &Triple) |
Variables | |
static constexpr llvm::StringLiteral | MultilibFilename = "multilib.yaml" |
|
static |
Definition at line 197 of file BareMetal.cpp.
References D, and MultilibFilename.
Referenced by clang::driver::toolchains::BareMetal::computeSysRoot(), and clang::driver::toolchains::BareMetal::findMultilibs().
|
static |
Definition at line 172 of file BareMetal.cpp.
References D, clang::driver::Multilib::flags(), clang::driver::ToolChain::getMultilibFlags(), clang::driver::MultilibSet::parseYaml(), and clang::Result.
Referenced by clang::driver::toolchains::BareMetal::findMultilibs().
|
static |
Definition at line 36 of file BareMetal.cpp.
References clang::driver::tools::addMultilibFlag(), clang::driver::MultilibSetBuilder::Either(), clang::driver::MultilibBuilder::flag(), clang::driver::tools::riscv::getRISCVABI(), clang::driver::tools::riscv::getRISCVArch(), and clang::driver::MultilibSetBuilder::makeMultilibSet().
Referenced by clang::driver::toolchains::BareMetal::findMultilibs().
|
static |
Is the triple {aarch64.aarch64_be}-none-elf?
Definition at line 139 of file BareMetal.cpp.
Referenced by clang::driver::toolchains::BareMetal::handlesTarget().
|
static |
Is the triple {arm,armeb,thumb,thumbeb}-none-none-{eabi,eabihf} ?
Definition at line 118 of file BareMetal.cpp.
Referenced by clang::driver::tools::baremetal::Linker::ConstructJob(), and clang::driver::toolchains::BareMetal::handlesTarget().
|
static |
Is the triple powerpc[64][le]-*-none-eabi?
Definition at line 167 of file BareMetal.cpp.
Referenced by clang::driver::toolchains::BareMetal::handlesTarget().
|
static |
Definition at line 153 of file BareMetal.cpp.
Referenced by clang::driver::toolchains::BareMetal::findMultilibs(), and clang::driver::toolchains::BareMetal::handlesTarget().
|
staticconstexpr |
Definition at line 194 of file BareMetal.cpp.
Referenced by computeBaseSysRoot(), and clang::driver::toolchains::BareMetal::findMultilibs().