LLVM
8.0.1
|
#include "llvm/ADT/Triple.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/Host.h"
#include "llvm/Support/TargetParser.h"
#include <cstring>
Go to the source code of this file.
Functions | |
static Triple::ArchType | parseBPFArch (StringRef ArchName) |
static Triple::ArchType | parseARMArch (StringRef ArchName) |
static Triple::ArchType | parseArch (StringRef ArchName) |
static Triple::VendorType | parseVendor (StringRef VendorName) |
static Triple::OSType | parseOS (StringRef OSName) |
static Triple::EnvironmentType | parseEnvironment (StringRef EnvironmentName) |
static Triple::ObjectFormatType | parseFormat (StringRef EnvironmentName) |
static Triple::SubArchType | parseSubArch (StringRef SubArchName) |
static StringRef | getObjectFormatTypeName (Triple::ObjectFormatType Kind) |
static Triple::ObjectFormatType | getDefaultFormat (const Triple &T) |
static unsigned | EatNumber (StringRef &Str) |
static void | parseVersionFromName (StringRef Name, unsigned &Major, unsigned &Minor, unsigned &Micro) |
static unsigned | getArchPointerBitWidth (llvm::Triple::ArchType Arch) |
Definition at line 993 of file Triple.cpp.
References assert(), llvm::StringRef::empty(), and llvm::StringRef::substr().
Referenced by parseVersionFromName().
|
static |
Definition at line 1206 of file Triple.cpp.
References llvm::Triple::aarch64, llvm::Triple::aarch64_be, llvm::Triple::amdgcn, llvm::Triple::amdil, llvm::Triple::amdil64, llvm::Triple::arc, llvm::Triple::arm, llvm::Triple::armeb, llvm::Triple::avr, llvm::Triple::bpfeb, llvm::Triple::bpfel, llvm::Triple::hexagon, llvm::Triple::hsail, llvm::Triple::hsail64, llvm::Triple::kalimba, llvm::Triple::lanai, llvm::Triple::le32, llvm::Triple::le64, llvm_unreachable, llvm::Triple::mips, llvm::Triple::mips64, llvm::Triple::mips64el, llvm::Triple::mipsel, llvm::Triple::msp430, llvm::Triple::nvptx, llvm::Triple::nvptx64, llvm::Triple::ppc, llvm::Triple::ppc64, llvm::Triple::ppc64le, llvm::Triple::r600, llvm::Triple::renderscript32, llvm::Triple::renderscript64, llvm::Triple::riscv32, llvm::Triple::riscv64, llvm::Triple::shave, llvm::Triple::sparc, llvm::Triple::sparcel, llvm::Triple::sparcv9, llvm::Triple::spir, llvm::Triple::spir64, llvm::Triple::systemz, llvm::Triple::tce, llvm::Triple::tcele, llvm::Triple::thumb, llvm::Triple::thumbeb, llvm::Triple::UnknownArch, llvm::Triple::wasm32, llvm::Triple::wasm64, llvm::Triple::x86, llvm::Triple::x86_64, and llvm::Triple::xcore.
Referenced by llvm::Triple::isArch16Bit(), llvm::Triple::isArch32Bit(), and llvm::Triple::isArch64Bit().
|
static |
Definition at line 630 of file Triple.cpp.
References llvm::Triple::aarch64, llvm::Triple::aarch64_be, llvm::Triple::amdgcn, llvm::Triple::amdil, llvm::Triple::amdil64, llvm::Triple::arc, llvm::Triple::arm, llvm::Triple::armeb, llvm::Triple::avr, llvm::Triple::bpfeb, llvm::Triple::bpfel, llvm::Triple::COFF, llvm::Triple::ELF, llvm::Triple::getArch(), llvm::Triple::hexagon, llvm::Triple::hsail, llvm::Triple::hsail64, llvm::Triple::isOSDarwin(), llvm::Triple::isOSWindows(), llvm::Triple::kalimba, llvm::Triple::lanai, llvm::Triple::le32, llvm::Triple::le64, llvm_unreachable, llvm::Triple::MachO, llvm::Triple::mips, llvm::Triple::mips64, llvm::Triple::mips64el, llvm::Triple::mipsel, llvm::Triple::msp430, llvm::Triple::nvptx, llvm::Triple::nvptx64, llvm::Triple::ppc, llvm::Triple::ppc64, llvm::Triple::ppc64le, llvm::Triple::r600, llvm::Triple::renderscript32, llvm::Triple::renderscript64, llvm::Triple::riscv32, llvm::Triple::riscv64, llvm::Triple::shave, llvm::Triple::sparc, llvm::Triple::sparcel, llvm::Triple::sparcv9, llvm::Triple::spir, llvm::Triple::spir64, llvm::Triple::systemz, llvm::Triple::tce, llvm::Triple::tcele, llvm::Triple::thumb, llvm::Triple::thumbeb, llvm::Triple::UnknownArch, llvm::Triple::Wasm, llvm::Triple::wasm32, llvm::Triple::wasm64, llvm::Triple::x86, llvm::Triple::x86_64, and llvm::Triple::xcore.
Referenced by llvm::Triple::setEnvironment(), and llvm::Triple::Triple().
|
static |
Definition at line 619 of file Triple.cpp.
References llvm::Triple::COFF, llvm::Triple::ELF, llvm_unreachable, llvm::Triple::MachO, llvm::Triple::UnknownObjectFormat, and llvm::Triple::Wasm.
Referenced by llvm::Triple::normalize(), llvm::Triple::setEnvironment(), and llvm::Triple::setObjectFormat().
|
static |
Definition at line 379 of file Triple.cpp.
References llvm::Triple::aarch64, llvm::Triple::aarch64_be, llvm::Triple::amdgcn, llvm::Triple::amdil, llvm::Triple::amdil64, llvm::Triple::arc, llvm::Triple::arm, llvm::Triple::armeb, llvm::Triple::avr, llvm::StringSwitch< T, R >::Case(), llvm::StringSwitch< T, R >::Cases(), llvm::StringSwitch< T, R >::Default(), llvm::Triple::hexagon, llvm::Triple::hsail, llvm::Triple::hsail64, llvm::Triple::kalimba, llvm::Triple::lanai, llvm::Triple::le32, llvm::Triple::le64, llvm::Triple::mips, llvm::Triple::mips64, llvm::Triple::mips64el, llvm::Triple::mipsel, llvm::Triple::msp430, llvm::Triple::nvptx, llvm::Triple::nvptx64, parseARMArch(), parseBPFArch(), llvm::Triple::ppc, llvm::Triple::ppc64, llvm::Triple::ppc64le, llvm::Triple::r600, llvm::Triple::renderscript32, llvm::Triple::renderscript64, llvm::Triple::riscv32, llvm::Triple::riscv64, llvm::Triple::shave, llvm::Triple::sparc, llvm::Triple::sparcel, llvm::Triple::sparcv9, llvm::Triple::spir, llvm::Triple::spir64, llvm::StringSwitch< T, R >::StartsWith(), llvm::StringRef::startswith(), llvm::Triple::systemz, llvm::Triple::tce, llvm::Triple::tcele, llvm::Triple::thumb, llvm::Triple::thumbeb, llvm::Triple::UnknownArch, llvm::Triple::wasm32, llvm::Triple::wasm64, llvm::Triple::x86, llvm::Triple::x86_64, and llvm::Triple::xcore.
Referenced by llvm::AArch64::getDefaultCPU(), llvm::ARM::getDefaultCPU(), llvm::Triple::normalize(), llvm::ARM::parseArchProfile(), llvm::ARM::parseArchVersion(), and llvm::Triple::Triple().
|
static |
Definition at line 314 of file Triple.cpp.
References llvm::Triple::aarch64, llvm::ARM::AARCH64, llvm::Triple::aarch64_be, llvm::Triple::arm, llvm::ARM::ARM, llvm::Triple::armeb, llvm::ARM::BIG, llvm::StringRef::empty(), llvm::ARM::getCanonicalArchName(), llvm::ARM::INVALID, llvm::ARM::LITTLE, llvm::ARM::M, llvm::ARM::parseArchEndian(), llvm::ARM::parseArchISA(), llvm::ARM::parseArchProfile(), llvm::ARM::parseArchVersion(), llvm::StringRef::startswith(), llvm::Triple::thumb, llvm::ARM::THUMB, llvm::Triple::thumbeb, llvm::Triple::UnknownArch, and llvm::IndexedInstrProf::Version.
Referenced by parseArch().
|
static |
Definition at line 243 of file Triple.cpp.
References llvm::Triple::bpfeb, llvm::Triple::bpfel, llvm::StringRef::equals(), llvm::sys::IsLittleEndianHost, and llvm::Triple::UnknownArch.
Referenced by llvm::Triple::getArchTypeForLLVMName(), and parseArch().
|
static |
Definition at line 513 of file Triple.cpp.
References llvm::Triple::Android, llvm::Triple::CODE16, llvm::Triple::CoreCLR, llvm::Triple::Cygnus, llvm::StringSwitch< T, R >::Default(), llvm::Triple::EABI, llvm::Triple::EABIHF, llvm::Triple::GNU, llvm::Triple::GNUABI64, llvm::Triple::GNUABIN32, llvm::Triple::GNUEABI, llvm::Triple::GNUEABIHF, llvm::Triple::GNUX32, llvm::Triple::Itanium, llvm::Triple::MSVC, llvm::Triple::Musl, llvm::Triple::MuslEABI, llvm::Triple::MuslEABIHF, llvm::Triple::Simulator, llvm::StringSwitch< T, R >::StartsWith(), and llvm::Triple::UnknownEnvironment.
Referenced by llvm::Triple::normalize(), and llvm::Triple::Triple().
|
static |
Definition at line 536 of file Triple.cpp.
References llvm::Triple::COFF, llvm::StringSwitch< T, R >::Default(), llvm::Triple::ELF, llvm::StringSwitch< T, R >::EndsWith(), llvm::Triple::MachO, llvm::Triple::UnknownObjectFormat, and llvm::Triple::Wasm.
Referenced by llvm::Triple::normalize(), and llvm::Triple::Triple().
|
static |
Definition at line 473 of file Triple.cpp.
References llvm::Triple::AIX, llvm::Triple::AMDHSA, llvm::Triple::AMDPAL, llvm::Triple::Ananas, llvm::Triple::CloudABI, llvm::Triple::CNK, llvm::Triple::Contiki, llvm::Triple::CUDA, llvm::Triple::Darwin, llvm::StringSwitch< T, R >::Default(), llvm::Triple::DragonFly, llvm::Triple::ELFIAMCU, llvm::Triple::FreeBSD, llvm::Triple::Fuchsia, llvm::Triple::Haiku, llvm::Triple::HermitCore, llvm::Triple::Hurd, llvm::Triple::IOS, llvm::Triple::KFreeBSD, llvm::Triple::Linux, llvm::Triple::Lv2, llvm::Triple::MacOSX, llvm::Triple::Mesa3D, llvm::Triple::Minix, llvm::Triple::NaCl, llvm::Triple::NetBSD, llvm::Triple::NVCL, llvm::Triple::OpenBSD, llvm::Triple::PS4, llvm::Triple::RTEMS, llvm::Triple::Solaris, llvm::StringSwitch< T, R >::StartsWith(), llvm::Triple::TvOS, llvm::Triple::UnknownOS, llvm::Triple::WASI, llvm::Triple::WatchOS, and llvm::Triple::Win32.
Referenced by llvm::Triple::normalize(), and llvm::Triple::Triple().
|
static |
Definition at line 545 of file Triple.cpp.
References llvm::Triple::ARMSubArch_v4t, llvm::Triple::ARMSubArch_v5, llvm::Triple::ARMSubArch_v5te, llvm::Triple::ARMSubArch_v6, llvm::Triple::ARMSubArch_v6k, llvm::Triple::ARMSubArch_v6m, llvm::Triple::ARMSubArch_v6t2, llvm::Triple::ARMSubArch_v7, llvm::Triple::ARMSubArch_v7em, llvm::Triple::ARMSubArch_v7k, llvm::Triple::ARMSubArch_v7m, llvm::Triple::ARMSubArch_v7s, llvm::Triple::ARMSubArch_v7ve, llvm::Triple::ARMSubArch_v8, llvm::Triple::ARMSubArch_v8_1a, llvm::Triple::ARMSubArch_v8_2a, llvm::Triple::ARMSubArch_v8_3a, llvm::Triple::ARMSubArch_v8_4a, llvm::Triple::ARMSubArch_v8_5a, llvm::Triple::ARMSubArch_v8m_baseline, llvm::Triple::ARMSubArch_v8m_mainline, llvm::Triple::ARMSubArch_v8r, llvm::StringSwitch< T, R >::Default(), llvm::StringRef::empty(), llvm::StringSwitch< T, R >::EndsWith(), llvm::StringRef::endswith(), llvm::ARM::getCanonicalArchName(), llvm::Triple::KalimbaSubArch_v3, llvm::Triple::KalimbaSubArch_v4, llvm::Triple::KalimbaSubArch_v5, llvm::Triple::MipsSubArch_r6, llvm::Triple::NoSubArch, llvm::ARM::parseArch(), and llvm::StringRef::startswith().
Referenced by llvm::Triple::Triple().
|
static |
Definition at line 452 of file Triple.cpp.
References llvm::Triple::AMD, llvm::Triple::Apple, llvm::Triple::BGP, llvm::Triple::BGQ, llvm::StringSwitch< T, R >::Case(), llvm::Triple::CSR, llvm::StringSwitch< T, R >::Default(), llvm::Triple::Freescale, llvm::Triple::IBM, llvm::Triple::ImaginationTechnologies, llvm::Triple::Mesa, llvm::Triple::MipsTechnologies, llvm::Triple::Myriad, llvm::Triple::NVIDIA, llvm::Triple::OpenEmbedded, llvm::Triple::PC, llvm::Triple::SCEI, llvm::Triple::SUSE, and llvm::Triple::UnknownVendor.
Referenced by llvm::Triple::normalize(), and llvm::Triple::Triple().
|
static |
Definition at line 1008 of file Triple.cpp.
References EatNumber(), llvm::StringRef::empty(), llvm::StringRef::startswith(), and llvm::StringRef::substr().
Referenced by llvm::Triple::getEnvironmentVersion(), and llvm::Triple::getOSVersion().