mini-llvm 0.1.0
Loading...
Searching...
No Matches
mini_llvm Namespace Reference

Namespaces

namespace  colors
namespace  ir
namespace  mc
namespace  mir
namespace  ops
namespace  sequence_ops
namespace  set_ops

Classes

class  ArrowProxy
class  BigInteger
class  Color
struct  ColoredString
struct  ColoredStringView
class  ColorGuard
class  CommandLineParser
struct  Diagnostic
class  Expected
class  Expected< void, E >
class  FileHandle
class  FunctionRef
class  FunctionRef< R(Args...)>
class  GraphColoringAllocator
class  HashMap
class  IndirectIterator
class  LinearScanAllocator
class  Matrix
class  NaiveAllocator
class  OptionalReference
class  Path
class  PCG32
class  RegisterAllocator
class  RISCVBackendDriver
class  RISCVMCGen
class  RISCVMIRGen
class  SourceManager
class  StringJoiner
class  SystemError
class  SystemString
class  Unexpected
class  VTModeGuard

Enumerations

enum class  ExtensionMode { kNo , kSign , kZero }
enum class  Linkage { kExternal , kInternal , kPrivate }
enum class  Precision { kSingle , kDouble }
enum class  ErrorCode

Functions

constexpr const char * name (Diagnostic::Level level)
Color color (Diagnostic::Level level)
constexpr bool isAsciiPrintable (char ch) noexcept
constexpr bool isAsciiUpper (char ch) noexcept
constexpr bool isAsciiLower (char ch) noexcept
constexpr bool isAsciiLetter (char ch) noexcept
constexpr bool isAsciiDigit (char ch) noexcept
constexpr bool isAsciiLetterOrDigit (char ch) noexcept
constexpr bool isAsciiHexDigit (char ch) noexcept
constexpr char toAsciiLower (char ch) noexcept
constexpr char toAsciiUpper (char ch) noexcept
MINI_LLVM_EXPORT bool operator== (const BigInteger &lhs, const BigInteger &rhs)
MINI_LLVM_EXPORT std::strong_ordering operator<=> (const BigInteger &lhs, const BigInteger &rhs)
MINI_LLVM_EXPORT BigInteger operator+ (const BigInteger &lhs, const BigInteger &rhs)
MINI_LLVM_EXPORT BigInteger operator- (const BigInteger &lhs, const BigInteger &rhs)
MINI_LLVM_EXPORT BigInteger operator* (const BigInteger &lhs, const BigInteger &rhs)
MINI_LLVM_EXPORT BigInteger operator/ (const BigInteger &lhs, int32_t rhs)
MINI_LLVM_EXPORT int32_t operator% (const BigInteger &lhs, int32_t rhs)
MINI_LLVM_EXPORT BigInteger abs (const BigInteger &value)
MINI_LLVM_EXPORT BigInteger abs (BigInteger &&value)
MINI_LLVM_EXPORT std::pair< BigInteger, int32_t > divRem (const BigInteger &lhs, int32_t rhs)
MINI_LLVM_EXPORT bool supportsColor (FILE *stream)
Color operator~ (Color color)
Color operator& (Color lhs, Color rhs)
Color operator| (Color lhs, Color rhs)
Color operator^ (Color lhs, Color rhs)
Coloroperator&= (Color &lhs, Color rhs)
Coloroperator|= (Color &lhs, Color rhs)
Coloroperator^= (Color &lhs, Color rhs)
MINI_LLVM_EXPORT bool shouldQuoteDotId (std::string_view id)
MINI_LLVM_EXPORT std::string quoteDotId (std::string_view id)
MINI_LLVM_EXPORT std::string formatDotId (std::string_view id)
const char * message (ErrorCode code)
void swap (FileHandle &lhs, FileHandle &rhs) noexcept
template<typename T, typename Hash = std::hash<T>>
constexpr void hash_combine (size_t &seed, const T &v) noexcept
MINI_LLVM_EXPORT Expected< std::string, SystemErrorreadAll (FILE *stream)
MINI_LLVM_EXPORT Expected< std::string, SystemErrorreadAll (const Path &path)
MINI_LLVM_EXPORT Expected< std::string, SystemErrorreadAll (const Path &path, FILE *stream)
MINI_LLVM_EXPORT Expected< void, SystemErrorwriteAll (FILE *stream, const char *data, size_t size)
MINI_LLVM_EXPORT Expected< void, SystemErrorwriteAll (const Path &path, const char *data, size_t size)
MINI_LLVM_EXPORT Expected< void, SystemErrorwriteAll (const Path &path, FILE *stream, const char *data, size_t size)
Expected< void, SystemErrorwriteAll (FILE *stream, std::string_view buffer)
Expected< void, SystemErrorwriteAll (const Path &path, std::string_view buffer)
Expected< void, SystemErrorwriteAll (const Path &path, FILE *stream, std::string_view buffer)
template<typename To, typename From>
std::unique_ptr< To > cast (std::unique_ptr< From > from) noexcept
template<typename To, typename From>
std::shared_ptr< To > cast (std::shared_ptr< From > from) noexcept
template<typename To, typename From>
std::weak_ptr< To > cast (std::weak_ptr< From > from) noexcept
template<typename T>
std::shared_ptr< T > share (T &value)
template<typename T>
std::weak_ptr< T > weaken (T &value)
template<typename T>
 OptionalReference (T &) -> OptionalReference< T >
template<typename T>
void swap (OptionalReference< T > &lhs, OptionalReference< T > &rhs) noexcept
void swap (Path &lhs, Path &rhs) noexcept
bool operator== (const Path &lhs, const Path &rhs) noexcept
std::strong_ordering operator<=> (const Path &lhs, const Path &rhs) noexcept
Path operator/ (Path lhs, const Path &rhs)
MINI_LLVM_EXPORT std::string toString (int value, int base=10)
MINI_LLVM_EXPORT std::string toString (long value, int base=10)
MINI_LLVM_EXPORT std::string toString (long long value, int base=10)
MINI_LLVM_EXPORT std::string toString (unsigned int value, int base=10)
MINI_LLVM_EXPORT std::string toString (unsigned long value, int base=10)
MINI_LLVM_EXPORT std::string toString (unsigned long long value, int base=10)
MINI_LLVM_EXPORT void normalizeLineEndings (std::string &str)
void swap (SystemString &lhs, SystemString &rhs) noexcept
bool operator== (const SystemString &lhs, const SystemString &rhs) noexcept
std::strong_ordering operator<=> (const SystemString &lhs, const SystemString &rhs) noexcept
MINI_LLVM_EXPORT char32_t decodeUtf8 (const char *&ptr) noexcept

Enumeration Type Documentation

◆ ErrorCode

enum class mini_llvm::ErrorCode
strong

◆ ExtensionMode

enum class mini_llvm::ExtensionMode
strong
Enumerator
kNo 
kSign 
kZero 

◆ Linkage

enum class mini_llvm::Linkage
strong
Enumerator
kExternal 
kInternal 
kPrivate 

◆ Precision

enum class mini_llvm::Precision
strong
Enumerator
kSingle 
kDouble 

Function Documentation

◆ abs() [1/2]

MINI_LLVM_EXPORT BigInteger mini_llvm::abs ( BigInteger && value)

◆ abs() [2/2]

MINI_LLVM_EXPORT BigInteger mini_llvm::abs ( const BigInteger & value)

◆ cast() [1/3]

template<typename To, typename From>
std::shared_ptr< To > mini_llvm::cast ( std::shared_ptr< From > from)
noexcept

◆ cast() [2/3]

template<typename To, typename From>
std::unique_ptr< To > mini_llvm::cast ( std::unique_ptr< From > from)
noexcept

◆ cast() [3/3]

template<typename To, typename From>
std::weak_ptr< To > mini_llvm::cast ( std::weak_ptr< From > from)
noexcept

◆ color()

Color mini_llvm::color ( Diagnostic::Level level)
inline

◆ decodeUtf8()

MINI_LLVM_EXPORT char32_t mini_llvm::decodeUtf8 ( const char *& ptr)
noexcept

◆ divRem()

MINI_LLVM_EXPORT std::pair< BigInteger, int32_t > mini_llvm::divRem ( const BigInteger & lhs,
int32_t rhs )

◆ formatDotId()

MINI_LLVM_EXPORT std::string mini_llvm::formatDotId ( std::string_view id)

◆ hash_combine()

template<typename T, typename Hash = std::hash<T>>
void mini_llvm::hash_combine ( size_t & seed,
const T & v )
constexprnoexcept

◆ isAsciiDigit()

bool mini_llvm::isAsciiDigit ( char ch)
inlineconstexprnoexcept

◆ isAsciiHexDigit()

bool mini_llvm::isAsciiHexDigit ( char ch)
inlineconstexprnoexcept

◆ isAsciiLetter()

bool mini_llvm::isAsciiLetter ( char ch)
inlineconstexprnoexcept

◆ isAsciiLetterOrDigit()

bool mini_llvm::isAsciiLetterOrDigit ( char ch)
inlineconstexprnoexcept

◆ isAsciiLower()

bool mini_llvm::isAsciiLower ( char ch)
inlineconstexprnoexcept

◆ isAsciiPrintable()

bool mini_llvm::isAsciiPrintable ( char ch)
inlineconstexprnoexcept

◆ isAsciiUpper()

bool mini_llvm::isAsciiUpper ( char ch)
inlineconstexprnoexcept

◆ message()

const char * mini_llvm::message ( ErrorCode code)
inline

◆ name()

const char * mini_llvm::name ( Diagnostic::Level level)
inlineconstexpr

◆ normalizeLineEndings()

MINI_LLVM_EXPORT void mini_llvm::normalizeLineEndings ( std::string & str)

◆ operator%()

MINI_LLVM_EXPORT int32_t mini_llvm::operator% ( const BigInteger & lhs,
int32_t rhs )

◆ operator&()

Color mini_llvm::operator& ( Color lhs,
Color rhs )
inline

◆ operator&=()

Color & mini_llvm::operator&= ( Color & lhs,
Color rhs )
inline

◆ operator*()

MINI_LLVM_EXPORT BigInteger mini_llvm::operator* ( const BigInteger & lhs,
const BigInteger & rhs )

◆ operator+()

MINI_LLVM_EXPORT BigInteger mini_llvm::operator+ ( const BigInteger & lhs,
const BigInteger & rhs )

◆ operator-()

MINI_LLVM_EXPORT BigInteger mini_llvm::operator- ( const BigInteger & lhs,
const BigInteger & rhs )

◆ operator/() [1/2]

MINI_LLVM_EXPORT BigInteger mini_llvm::operator/ ( const BigInteger & lhs,
int32_t rhs )

◆ operator/() [2/2]

Path mini_llvm::operator/ ( Path lhs,
const Path & rhs )
inline

◆ operator<=>() [1/3]

MINI_LLVM_EXPORT std::strong_ordering mini_llvm::operator<=> ( const BigInteger & lhs,
const BigInteger & rhs )
noexcept

◆ operator<=>() [2/3]

std::strong_ordering mini_llvm::operator<=> ( const Path & lhs,
const Path & rhs )
inlinenoexcept

◆ operator<=>() [3/3]

std::strong_ordering mini_llvm::operator<=> ( const SystemString & lhs,
const SystemString & rhs )
inlinenoexcept

◆ operator==() [1/3]

MINI_LLVM_EXPORT bool mini_llvm::operator== ( const BigInteger & lhs,
const BigInteger & rhs )
noexcept

◆ operator==() [2/3]

bool mini_llvm::operator== ( const Path & lhs,
const Path & rhs )
inlinenoexcept

◆ operator==() [3/3]

bool mini_llvm::operator== ( const SystemString & lhs,
const SystemString & rhs )
inlinenoexcept

◆ operator^()

Color mini_llvm::operator^ ( Color lhs,
Color rhs )
inline

◆ operator^=()

Color & mini_llvm::operator^= ( Color & lhs,
Color rhs )
inline

◆ operator|()

Color mini_llvm::operator| ( Color lhs,
Color rhs )
inline

◆ operator|=()

Color & mini_llvm::operator|= ( Color & lhs,
Color rhs )
inline

◆ operator~()

Color mini_llvm::operator~ ( Color color)
inline

◆ OptionalReference()

template<typename T>
mini_llvm::OptionalReference ( T & ) -> OptionalReference< T >

◆ quoteDotId()

MINI_LLVM_EXPORT std::string mini_llvm::quoteDotId ( std::string_view id)

◆ readAll() [1/3]

MINI_LLVM_EXPORT Expected< std::string, SystemError > mini_llvm::readAll ( const Path & path)

◆ readAll() [2/3]

MINI_LLVM_EXPORT Expected< std::string, SystemError > mini_llvm::readAll ( const Path & path,
FILE * stream )

◆ readAll() [3/3]

MINI_LLVM_EXPORT Expected< std::string, SystemError > mini_llvm::readAll ( FILE * stream)

◆ share()

template<typename T>
std::shared_ptr< T > mini_llvm::share ( T & value)

◆ shouldQuoteDotId()

MINI_LLVM_EXPORT bool mini_llvm::shouldQuoteDotId ( std::string_view id)

◆ supportsColor()

MINI_LLVM_EXPORT bool mini_llvm::supportsColor ( FILE * stream)

◆ swap() [1/4]

void mini_llvm::swap ( FileHandle & lhs,
FileHandle & rhs )
inlinenoexcept

◆ swap() [2/4]

template<typename T>
void mini_llvm::swap ( OptionalReference< T > & lhs,
OptionalReference< T > & rhs )
noexcept

◆ swap() [3/4]

void mini_llvm::swap ( Path & lhs,
Path & rhs )
inlinenoexcept

◆ swap() [4/4]

void mini_llvm::swap ( SystemString & lhs,
SystemString & rhs )
inlinenoexcept

◆ toAsciiLower()

char mini_llvm::toAsciiLower ( char ch)
inlineconstexprnoexcept

◆ toAsciiUpper()

char mini_llvm::toAsciiUpper ( char ch)
inlineconstexprnoexcept

◆ toString() [1/6]

MINI_LLVM_EXPORT std::string mini_llvm::toString ( int value,
int base = 10 )

◆ toString() [2/6]

MINI_LLVM_EXPORT std::string mini_llvm::toString ( long long value,
int base = 10 )

◆ toString() [3/6]

MINI_LLVM_EXPORT std::string mini_llvm::toString ( long value,
int base = 10 )

◆ toString() [4/6]

MINI_LLVM_EXPORT std::string mini_llvm::toString ( unsigned int value,
int base = 10 )

◆ toString() [5/6]

MINI_LLVM_EXPORT std::string mini_llvm::toString ( unsigned long long value,
int base = 10 )

◆ toString() [6/6]

MINI_LLVM_EXPORT std::string mini_llvm::toString ( unsigned long value,
int base = 10 )

◆ weaken()

template<typename T>
std::weak_ptr< T > mini_llvm::weaken ( T & value)

◆ writeAll() [1/6]

MINI_LLVM_EXPORT Expected< void, SystemError > mini_llvm::writeAll ( const Path & path,
const char * data,
size_t size )

◆ writeAll() [2/6]

MINI_LLVM_EXPORT Expected< void, SystemError > mini_llvm::writeAll ( const Path & path,
FILE * stream,
const char * data,
size_t size )

◆ writeAll() [3/6]

Expected< void, SystemError > mini_llvm::writeAll ( const Path & path,
FILE * stream,
std::string_view buffer )
inline

◆ writeAll() [4/6]

Expected< void, SystemError > mini_llvm::writeAll ( const Path & path,
std::string_view buffer )
inline

◆ writeAll() [5/6]

MINI_LLVM_EXPORT Expected< void, SystemError > mini_llvm::writeAll ( FILE * stream,
const char * data,
size_t size )

◆ writeAll() [6/6]

Expected< void, SystemError > mini_llvm::writeAll ( FILE * stream,
std::string_view buffer )
inline