clang 17.0.0git
|
See also MultilibSetBuilder for combining multilibs into a set. More...
#include "clang/Driver/Multilib.h"
Public Types | |
using | multilib_list = std::vector< Multilib > |
using | const_iterator = multilib_list::const_iterator |
using | IncludeDirsFunc = std::function< std::vector< std::string >(const Multilib &M)> |
using | FilterCallback = llvm::function_ref< bool(const Multilib &)> |
Public Member Functions | |
MultilibSet ()=default | |
MultilibSet (multilib_list &&Multilibs) | |
const multilib_list & | getMultilibs () |
MultilibSet & | FilterOut (FilterCallback F) |
Filter out some subset of the Multilibs using a user defined callback. | |
void | push_back (const Multilib &M) |
Add a completed Multilib to the set. | |
const_iterator | begin () const |
const_iterator | end () const |
multilib_list | select (const Multilib::flags_list &Flags) const |
Select compatible variants. | |
bool | select (const Multilib::flags_list &Flags, Multilib &M) const |
Pick the best multilib in the set,. | |
unsigned | size () const |
LLVM_DUMP_METHOD void | dump () const |
void | print (raw_ostream &OS) const |
MultilibSet & | setIncludeDirsCallback (IncludeDirsFunc F) |
const IncludeDirsFunc & | includeDirsCallback () const |
MultilibSet & | setFilePathsCallback (IncludeDirsFunc F) |
const IncludeDirsFunc & | filePathsCallback () const |
See also MultilibSetBuilder for combining multilibs into a set.
Definition at line 78 of file Multilib.h.
using clang::driver::MultilibSet::const_iterator = multilib_list::const_iterator |
Definition at line 81 of file Multilib.h.
using clang::driver::MultilibSet::FilterCallback = llvm::function_ref<bool(const Multilib &)> |
Definition at line 84 of file Multilib.h.
using clang::driver::MultilibSet::IncludeDirsFunc = std::function<std::vector<std::string>(const Multilib &M)> |
Definition at line 82 of file Multilib.h.
using clang::driver::MultilibSet::multilib_list = std::vector<Multilib> |
Definition at line 80 of file Multilib.h.
|
default |
|
inline |
Definition at line 93 of file Multilib.h.
|
inline |
Definition at line 103 of file Multilib.h.
LLVM_DUMP_METHOD void MultilibSet::dump | ( | ) | const |
Definition at line 118 of file Multilib.cpp.
References print().
|
inline |
Definition at line 104 of file Multilib.h.
|
inline |
Definition at line 129 of file Multilib.h.
Referenced by clang::driver::toolchains::Generic_GCC::AddMultilibPaths(), addMultilibsFilePaths(), and clang::driver::toolchains::Fuchsia::Fuchsia().
MultilibSet & MultilibSet::FilterOut | ( | FilterCallback | F | ) |
Filter out some subset of the Multilibs using a user defined callback.
Definition at line 85 of file Multilib.cpp.
Referenced by findAndroidArmMultilibs(), findCSKYMultilibs(), findMipsAndroidMultilibs(), findMipsCsMultilibs(), findMipsImgMultilibs(), findMipsMtiMultilibs(), findRISCVBareMetalMultilibs(), and clang::driver::toolchains::Fuchsia::Fuchsia().
|
inline |
Definition at line 95 of file Multilib.h.
|
inline |
Definition at line 122 of file Multilib.h.
Referenced by clang::driver::toolchains::MipsLLVMToolChain::AddClangSystemIncludeArgs(), clang::driver::toolchains::Solaris::AddClangSystemIncludeArgs(), clang::driver::toolchains::MipsLLVMToolChain::addLibCxxIncludePaths(), and clang::driver::toolchains::Generic_GCC::AddMultilibIncludeArgs().
void MultilibSet::print | ( | raw_ostream & | OS | ) | const |
Definition at line 122 of file Multilib.cpp.
Referenced by dump(), and clang::driver::operator<<().
void MultilibSet::push_back | ( | const Multilib & | M | ) |
Add a completed Multilib to the set.
Definition at line 90 of file Multilib.cpp.
Referenced by findOHOSMuslMultilibs(), and clang::driver::toolchains::Fuchsia::Fuchsia().
MultilibSet::multilib_list MultilibSet::select | ( | const Multilib::flags_list & | Flags | ) | const |
Select compatible variants.
Definition at line 93 of file Multilib.cpp.
References clang::driver::Multilib::flags(), clang::if(), and clang::Result.
Referenced by findAndroidArmMultilibs(), findCSKYMultilibs(), findMipsAndroidMultilibs(), findMipsMuslMultilibs(), findOHOSMuslMultilibs(), findRISCVBareMetalMultilibs(), findRISCVMultilibs(), clang::driver::toolchains::Fuchsia::Fuchsia(), and select().
bool MultilibSet::select | ( | const Multilib::flags_list & | Flags, |
Multilib & | M | ||
) | const |
Pick the best multilib in the set,.
Definition at line 109 of file Multilib.cpp.
References clang::Result, and select().
|
inline |
Definition at line 124 of file Multilib.h.
Referenced by findRISCVBareMetalMultilibs(), and clang::driver::toolchains::Fuchsia::Fuchsia().
|
inline |
Definition at line 117 of file Multilib.h.
Referenced by findMipsCsMultilibs(), findMipsImgMultilibs(), findMipsMtiMultilibs(), and findMipsMuslMultilibs().
|
inline |
Definition at line 112 of file Multilib.h.
Referenced by findMipsCsMultilibs().