Intel® Implicit SPMD Program Compiler (Intel® ISPC)
1.13.0
|
#include <target_registry.h>
Public Member Functions | |
const BitcodeLib * | getDispatchLib () const |
const BitcodeLib * | getBuiltinsCLib (TargetOS os, Arch arch) const |
const BitcodeLib * | getISPCTargetLib (ISPCTarget target, TargetOS os, Arch arch) const |
void | printSupportMatrix () const |
std::string | getSupportedArchs () |
std::string | getSupportedTargets () |
std::string | getSupportedOSes () |
bool | isSupported (ISPCTarget target, TargetOS os, Arch arch) const |
Static Public Member Functions | |
static void | RegisterTarget (const BitcodeLib *lib) |
static TargetLibRegistry * | getTargetLibRegistry () |
Private Member Functions | |
TargetLibRegistry () | |
Private Attributes | |
const BitcodeLib * | m_dispatch |
std::map< uint32_t, const BitcodeLib * > | m_builtins |
std::map< uint32_t, const BitcodeLib * > | m_targets |
std::bitset<(int) TargetOS::error > | m_supported_oses |
Static Private Attributes | |
static std::vector< const BitcodeLib * > * | libs = nullptr |
Definition at line 66 of file target_registry.h.
|
private |
Definition at line 88 of file target_registry.cpp.
References aarch64, arm, BitcodeLib::Builtins_c, custom_linux, BitcodeLib::Dispatch, Triple::encode(), BitcodeLib::ISPC_target, linux, and Triple::Triple().
const BitcodeLib * TargetLibRegistry::getBuiltinsCLib | ( | TargetOS | os, |
Arch | arch | ||
) | const |
Definition at line 133 of file target_registry.cpp.
References Triple::encode(), none, and Triple::Triple().
Referenced by DefineStdlib().
const BitcodeLib * TargetLibRegistry::getDispatchLib | ( | ) | const |
Definition at line 131 of file target_registry.cpp.
Referenced by lInitDispatchModule().
const BitcodeLib * TargetLibRegistry::getISPCTargetLib | ( | ISPCTarget | target, |
TargetOS | os, | ||
Arch | arch | ||
) | const |
Definition at line 140 of file target_registry.cpp.
References android, avx1_i32x4, custom_linux, Triple::encode(), error, freebsd, ios, linux, macos, ps4, sse4_i32x4, Triple::Triple(), UNREACHABLE, web, and windows.
Referenced by DefineStdlib().
std::string TargetLibRegistry::getSupportedArchs | ( | ) |
Definition at line 239 of file target_registry.cpp.
References ArchToString(), error, none, sse2_i32x4, and windows.
std::string TargetLibRegistry::getSupportedOSes | ( | ) |
Definition at line 286 of file target_registry.cpp.
References error, OSToLowerString(), and windows.
std::string TargetLibRegistry::getSupportedTargets | ( | ) |
Definition at line 263 of file target_registry.cpp.
References error, ISPCTargetToString(), none, sse2_i32x4, and windows.
|
static |
Definition at line 126 of file target_registry.cpp.
Referenced by Globals::Globals().
bool TargetLibRegistry::isSupported | ( | ISPCTarget | target, |
TargetOS | os, | ||
Arch | arch | ||
) | const |
Definition at line 303 of file target_registry.cpp.
void TargetLibRegistry::printSupportMatrix | ( | ) | const |
Definition at line 175 of file target_registry.cpp.
References ArchToString(), error, ISPCTargetToString(), none, OSToString(), sse2_i32x4, and windows.
Referenced by main().
|
static |
Definition at line 119 of file target_registry.cpp.
Referenced by BitcodeLib::BitcodeLib().
|
staticprivate |
Definition at line 67 of file target_registry.h.
Referenced by Triple::encode().
|
private |
Definition at line 78 of file target_registry.h.
|
private |
Definition at line 74 of file target_registry.h.
|
private |
Definition at line 85 of file target_registry.h.
|
private |
Definition at line 82 of file target_registry.h.