llvm Namespace Reference

Namespaces

namespace  APIntOps
namespace  cl
 

cl Namespace - This namespace contains all of the command line option processing machinery.


namespace  dont_use
namespace  sys

Classes

struct  fltSemantics
class  APFloat
class  APInt
 APInt - This class represents arbitrary precision constant integral values. More...
class  APSInt
class  ArrayRef
 ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory), i.e. More...
struct  isPodLike< ArrayRef< T > >
struct  DenseMapInfo
struct  DenseMapInfo< T * >
struct  DenseMapInfo< char >
struct  DenseMapInfo< unsigned >
struct  DenseMapInfo< unsigned long >
struct  DenseMapInfo< unsigned long long >
struct  DenseMapInfo< int >
struct  DenseMapInfo< long >
struct  DenseMapInfo< long long >
struct  DenseMapInfo< std::pair< T, U > >
struct  ilist_nextprev_traits
 ilist_nextprev_traits - A fragment for template traits for intrusive list that provides default next/prev implementations for common operations. More...
struct  ilist_sentinel_traits
 ilist_sentinel_traits - A fragment for template traits for intrusive list that provides default sentinel implementations for common operations. More...
struct  ilist_node_traits
 ilist_node_traits - A fragment for template traits for intrusive list that provides default node related operations. More...
struct  ilist_default_traits
 ilist_default_traits - Default template traits for intrusive list. More...
struct  ilist_traits
struct  ilist_traits< const Ty >
class  ilist_iterator
struct  simplify_type< ilist_iterator< NodeTy > >
struct  simplify_type< const ilist_iterator< NodeTy > >
class  iplist
 iplist - The subset of list functionality that can safely be used on nodes of polymorphic types, i.e. More...
struct  ilist
class  ilist_half_node
 ilist_half_node - Base class that provides prev services for sentinels. More...
class  ilist_node
 ilist_node - Base class that provides next/prev services for nodes that use ilist_nextprev_traits or ilist_default_traits. More...
class  OwningPtr
 OwningPtr smart pointer - OwningPtr mimics a built-in pointer except that it guarantees deletion of the object pointed to, either on destruction of the OwningPtr or via an explicit reset(). More...
class  OwningArrayPtr
 OwningArrayPtr smart pointer - OwningArrayPtr provides the same functionality as OwningPtr, except that it works for array types. More...
class  SmallPtrSetImpl
 SmallPtrSetImpl - This is the common code shared among all the SmallPtrSet<>'s, which is almost everything. More...
class  SmallPtrSetIteratorImpl
 SmallPtrSetIteratorImpl - This is the common base class shared between all instances of SmallPtrSetIterator. More...
class  SmallPtrSetIterator
 SmallPtrSetIterator - This implements a const_iterator for SmallPtrSet. More...
struct  RoundUpToPowerOfTwoH
 RoundUpToPowerOfTwoH - If N is not a power of two, increase it. More...
struct  RoundUpToPowerOfTwoH< N, false >
struct  RoundUpToPowerOfTwo
class  SmallPtrSet
 SmallPtrSet - This class implements a set which is optimized for holding SmallSize or less elements. More...
class  SmallString
 SmallString - A SmallString is just a SmallVector with methods and accessors that make it work better as a string (e.g. More...
class  SmallVectorBase
 SmallVectorBase - This is all the non-templated stuff common to all SmallVectors. More...
class  SmallVectorTemplateCommon
class  SmallVectorTemplateBase
 SmallVectorTemplateBase<isPodLike = false> - This is where we put method implementations that are designed to work with non-POD-like T's. More...
class  SmallVectorTemplateBase< T, true >
 SmallVectorTemplateBase<isPodLike = true> - This is where we put method implementations that are designed to work with POD-like T's. More...
class  SmallVectorImpl
 SmallVectorImpl - This class consists of common code factored out of the SmallVector class to reduce code duplication based on the SmallVector 'N' template parameter. More...
class  SmallVector
 SmallVector - This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small. More...
class  SmallVector< T, 0 >
 Specialize SmallVector at N=0. More...
class  StringMapEntryInitializer
 StringMapEntryInitializer - This datatype can be partially specialized for various datatypes in a stringmap to allow them to be initialized when an entry is default constructed for the map. More...
class  StringMapEntryBase
 StringMapEntryBase - Shared base class of StringMapEntry instances. More...
class  StringMapImpl
 StringMapImpl - This is the base class of StringMap that is shared among all of its instantiations. More...
class  StringMapEntry
 StringMapEntry - This is used to represent one value that is inserted into a StringMap. More...
class  StringMap
 StringMap - This is an unconventional map that is specialized for handling keys that are "strings", which are basically ranges of bytes. More...
class  StringMapConstIterator
class  StringMapIterator
class  StringRef
 StringRef - Represent a constant reference to a string, i.e. More...
struct  isPodLike< StringRef >
class  Twine
 Twine - A lightweight data structure for efficiently representing the concatenation of temporary values as strings. More...
struct  AlignmentCalcImpl
struct  AlignOf
 AlignOf - A templated class that contains an enum value representing the alignment of the template argument. More...
struct  ReferenceAdder
struct  ReferenceAdder< T & >
class  MallocAllocator
class  MemSlab
 MemSlab - This structure lives at the beginning of every slab allocated by the bump allocator. More...
class  SlabAllocator
 SlabAllocator - This class can be used to parameterize the underlying allocation strategy for the bump allocator. More...
class  MallocSlabAllocator
 MallocSlabAllocator - The default slab allocator for the bump allocator is an adapter class for MallocAllocator that just forwards the method calls and translates the arguments. More...
class  BumpPtrAllocator
 BumpPtrAllocator - This allocator is useful for containers that need very simple memory allocation strategies. More...
class  SpecificBumpPtrAllocator
 SpecificBumpPtrAllocator - Same as BumpPtrAllocator but allows only elements of one type to be allocated. More...
class  PointerLikeTypeTraits
 PointerLikeTypeTraits - This is a traits object that is used to handle pointer types and things that are just wrappers for pointers as a uniform entity. More...
class  PointerLikeTypeTraits< T * >
class  PointerLikeTypeTraits< const T * >
class  PointerLikeTypeTraits< uintptr_t >
struct  RecyclerStruct
 RecyclerStruct - Implementation detail for Recycler. More...
struct  ilist_traits< RecyclerStruct >
class  Recycler
 Recycler - This class manages a linked-list of deallocated nodes and facilitates reusing deallocated memory in place of allocating new memory. More...
struct  is_class
struct  isPodLike
 isPodLike - This is a type trait that is used to determine whether a given type can be copied around with memcpy instead of running ctors etc. More...
struct  isPodLike< std::pair< T, U > >
struct  is_same
 Metafunction that determines whether the two given types are equivalent. More...
struct  is_same< T, T >
struct  enable_if_c
struct  enable_if_c< false, T >
struct  enable_if
struct  is_base_of
 is_base_of - Metafunction to determine whether one type is a base class of (or identical to) another type. More...
struct  remove_pointer
struct  remove_pointer< T * >
struct  remove_pointer< T *const >
struct  remove_pointer< T *volatile >
struct  remove_pointer< T *const volatile >
struct  conditional
struct  conditional< false, T, F >

Typedefs

typedef signed short exponent_t
typedef uint64_t integerPart

Enumerations

enum  lostFraction { lfExactlyZero, lfLessThanHalf, lfExactlyHalf, lfMoreThanHalf }

Functions

void PrintRecyclerStats (size_t Size, size_t Align, size_t FreeListSize)
 PrintRecyclingAllocatorStats - Helper for RecyclingAllocator for printing statistics.
bool operator== (uint64_t V1, const APInt &V2)
bool operator!= (uint64_t V1, const APInt &V2)
std::ostream & operator<< (std::ostream &OS, const APInt &I)
std::ostream & operator<< (std::ostream &OS, const APSInt &I)
template<typename T >
void operator- (int, ilist_iterator< T >)
template<typename T >
void operator- (ilist_iterator< T >, int)
template<typename T >
void operator+ (int, ilist_iterator< T >)
template<typename T >
void operator+ (ilist_iterator< T >, int)
template<typename T >
bool operator!= (const T *LHS, const ilist_iterator< const T > &RHS)
template<typename T >
bool operator== (const T *LHS, const ilist_iterator< const T > &RHS)
template<typename T >
bool operator!= (T *LHS, const ilist_iterator< T > &RHS)
template<typename T >
bool operator== (T *LHS, const ilist_iterator< T > &RHS)
template<class T >
void swap (OwningPtr< T > &a, OwningPtr< T > &b)
template<class T >
void swap (OwningArrayPtr< T > &a, OwningArrayPtr< T > &b)
template<typename T , unsigned N>
static size_t capacity_in_bytes (const SmallVector< T, N > &X)
static char hexdigit (unsigned X, bool LowerCase=false)
 hexdigit - Return the hexadecimal character for the given number
template<typename IntTy >
static char * utohex_buffer (IntTy X, char *BufferEnd)
 utohex_buffer - Emit the specified number into the buffer specified by BufferEnd, returning a pointer to the start of the string.
static std::string utohexstr (uint64_t X)
static std::string utostr_32 (uint32_t X, bool isNeg=false)
static std::string utostr (uint64_t X, bool isNeg=false)
static std::string itostr (int64_t X)
static std::string ftostr (double V)
static std::string ftostr (const APFloat &V)
static std::string LowercaseString (const std::string &S)
static std::string UppercaseString (const std::string &S)
StringRef::size_type StrInStrNoCase (StringRef s1, StringRef s2)
 StrInStrNoCase - Portable version of strcasestr.
std::pair< StringRef, StringRefgetToken (StringRef Source, StringRef Delimiters=" \t\n\v\f\r")
 getToken - This function extracts one token from source, ignoring any leading characters that appear in the Delimiters string, and ending the token at any of the characters that appear in the Delimiters string.
void SplitString (StringRef Source, SmallVectorImpl< StringRef > &OutFragments, StringRef Delimiters=" \t\n\v\f\r")
 SplitString - Split up the specified string according to the specified delimiters, appending the result fragments to the output list.
static unsigned HashString (StringRef Str, unsigned Result=0)
 HashString - Hash function for strings.
template<typename T >
static unsigned alignOf ()
 alignOf - A templated function that returns the minimum alignment of of a type.
uint32_t Hi_32 (uint64_t Value)
 Hi_32 - This function returns the high 32 bits of a 64 bit value.
uint32_t Lo_32 (uint64_t Value)
 Lo_32 - This function returns the low 32 bits of a 64 bit value.
template<unsigned N>
bool isInt (int64_t x)
 isInt - Checks if an integer fits into the given bit width.
template<>
bool isInt< 8 > (int64_t x)
template<>
bool isInt< 16 > (int64_t x)
template<>
bool isInt< 32 > (int64_t x)
template<unsigned N>
bool isUInt (uint64_t x)
 isUInt - Checks if an unsigned integer fits into the given bit width.
template<>
bool isUInt< 8 > (uint64_t x)
template<>
bool isUInt< 16 > (uint64_t x)
template<>
bool isUInt< 32 > (uint64_t x)
bool isUIntN (unsigned N, uint64_t x)
 isUIntN - Checks if an unsigned integer fits into the given (dynamic) bit width.
bool isIntN (unsigned N, int64_t x)
 isIntN - Checks if an signed integer fits into the given (dynamic) bit width.
bool isMask_32 (uint32_t Value)
 isMask_32 - This function returns true if the argument is a sequence of ones starting at the least significant bit with the remainder zero (32 bit version).
bool isMask_64 (uint64_t Value)
 isMask_64 - This function returns true if the argument is a sequence of ones starting at the least significant bit with the remainder zero (64 bit version).
bool isShiftedMask_32 (uint32_t Value)
 isShiftedMask_32 - This function returns true if the argument contains a sequence of ones with the remainder zero (32 bit version.
bool isShiftedMask_64 (uint64_t Value)
 isShiftedMask_64 - This function returns true if the argument contains a sequence of ones with the remainder zero (64 bit version.
bool isPowerOf2_32 (uint32_t Value)
 isPowerOf2_32 - This function returns true if the argument is a power of two > 0.
bool isPowerOf2_64 (uint64_t Value)
 isPowerOf2_64 - This function returns true if the argument is a power of two > 0 (64 bit edition.
uint16_t ByteSwap_16 (uint16_t Value)
 ByteSwap_16 - This function returns a byte-swapped representation of the 16-bit argument, Value.
uint32_t ByteSwap_32 (uint32_t Value)
 ByteSwap_32 - This function returns a byte-swapped representation of the 32-bit argument, Value.
uint64_t ByteSwap_64 (uint64_t Value)
 ByteSwap_64 - This function returns a byte-swapped representation of the 64-bit argument, Value.
unsigned CountLeadingZeros_32 (uint32_t Value)
 CountLeadingZeros_32 - this function performs the platform optimal form of counting the number of zeros from the most significant bit to the first one bit.
unsigned CountLeadingOnes_32 (uint32_t Value)
 CountLeadingOnes_32 - this function performs the operation of counting the number of ones from the most significant bit to the first zero bit.
unsigned CountLeadingZeros_64 (uint64_t Value)
 CountLeadingZeros_64 - This function performs the platform optimal form of counting the number of zeros from the most significant bit to the first one bit (64 bit edition.
unsigned CountLeadingOnes_64 (uint64_t Value)
 CountLeadingOnes_64 - This function performs the operation of counting the number of ones from the most significant bit to the first zero bit (64 bit edition.
unsigned CountTrailingZeros_32 (uint32_t Value)
 CountTrailingZeros_32 - this function performs the platform optimal form of counting the number of zeros from the least significant bit to the first one bit.
unsigned CountTrailingOnes_32 (uint32_t Value)
 CountTrailingOnes_32 - this function performs the operation of counting the number of ones from the least significant bit to the first zero bit.
unsigned CountTrailingZeros_64 (uint64_t Value)
 CountTrailingZeros_64 - This function performs the platform optimal form of counting the number of zeros from the least significant bit to the first one bit (64 bit edition.
unsigned CountTrailingOnes_64 (uint64_t Value)
 CountTrailingOnes_64 - This function performs the operation of counting the number of ones from the least significant bit to the first zero bit (64 bit edition.
unsigned CountPopulation_32 (uint32_t Value)
 CountPopulation_32 - this function counts the number of set bits in a value.
unsigned CountPopulation_64 (uint64_t Value)
 CountPopulation_64 - this function counts the number of set bits in a value, (64 bit edition.
unsigned Log2_32 (uint32_t Value)
 Log2_32 - This function returns the floor log base 2 of the specified value, -1 if the value is zero.
unsigned Log2_64 (uint64_t Value)
 Log2_64 - This function returns the floor log base 2 of the specified value, -1 if the value is zero.
unsigned Log2_32_Ceil (uint32_t Value)
 Log2_32_Ceil - This function returns the ceil log base 2 of the specified value, 32 if the value is zero.
unsigned Log2_64_Ceil (uint64_t Value)
 Log2_64_Ceil - This function returns the ceil log base 2 of the specified value, 64 if the value is zero.
uint64_t GreatestCommonDivisor64 (uint64_t A, uint64_t B)
 GreatestCommonDivisor64 - Return the greatest common divisor of the two values using Euclid's algorithm.
double BitsToDouble (uint64_t Bits)
 BitsToDouble - This function takes a 64-bit integer and returns the bit equivalent double.
float BitsToFloat (uint32_t Bits)
 BitsToFloat - This function takes a 32-bit integer and returns the bit equivalent float.
uint64_t DoubleToBits (double Double)
 DoubleToBits - This function takes a double and returns the bit equivalent 64-bit integer.
uint32_t FloatToBits (float Float)
 FloatToBits - This function takes a float and returns the bit equivalent 32-bit integer.
int IsNAN (float f)
 Platform-independent wrappers for the C99 isnan() function.
int IsNAN (double d)
int IsInf (float f)
 Platform-independent wrappers for the C99 isinf() function.
int IsInf (double d)
static uint64_t MinAlign (uint64_t A, uint64_t B)
 MinAlign - A and B are either alignments or offsets.
static uint64_t NextPowerOf2 (uint64_t A)
 NextPowerOf2 - Returns the next power of two (in 64-bits) that is strictly greater than A.
uint64_t RoundUpToAlignment (uint64_t Value, uint64_t Align)
 RoundUpToAlignment - Returns the next integer (mod 2**64) that is greater than or equal to.
uint64_t OffsetToAlignment (uint64_t Value, uint64_t Align)
 OffsetToAlignment - Return the offset to the next integer (mod 2**64) that is greater than or equal to.
int64_t abs64 (int64_t x)
 abs64 - absolute value of a 64-bit int.
template<unsigned B>
int32_t SignExtend32 (uint32_t x)
 SignExtend32 - Sign extend B-bit number x to 32-bit int.
template<unsigned B>
int64_t SignExtend64 (uint64_t x)
 SignExtend64 - Sign extend B-bit number x to 64-bit int.
ArrayRef Convenience constructors



template<typename T >
ArrayRef< T > makeArrayRef (const T &OneElt)
 Construct an ArrayRef from a single element.
template<typename T >
ArrayRef< T > makeArrayRef (const T *data, size_t length)
 Construct an ArrayRef from a pointer and length.
template<typename T >
ArrayRef< T > makeArrayRef (const T *begin, const T *end)
 Construct an ArrayRef from a range.
template<typename T >
ArrayRef< T > makeArrayRef (const SmallVectorImpl< T > &Vec)
 Construct an ArrayRef from a SmallVector.
template<typename T , unsigned N>
ArrayRef< T > makeArrayRef (const SmallVector< T, N > &Vec)
 Construct an ArrayRef from a SmallVector.
template<typename T >
ArrayRef< T > makeArrayRef (const std::vector< T > &Vec)
 Construct an ArrayRef from a std::vector.
template<typename T , size_t N>
ArrayRef< T > makeArrayRef (const T(&Arr)[N])
 Construct an ArrayRef from a C array.
ArrayRef Comparison Operators



template<typename T >
bool operator== (ArrayRef< T > LHS, ArrayRef< T > RHS)
template<typename T >
bool operator!= (ArrayRef< T > LHS, ArrayRef< T > RHS)
StringRef Comparison Operators



bool operator== (StringRef LHS, StringRef RHS)
bool operator!= (StringRef LHS, StringRef RHS)
bool operator< (StringRef LHS, StringRef RHS)
bool operator<= (StringRef LHS, StringRef RHS)
bool operator> (StringRef LHS, StringRef RHS)
bool operator>= (StringRef LHS, StringRef RHS)
std::string & operator+= (std::string &buffer, llvm::StringRef string)
Twine Inline Implementations



Twine operator+ (const Twine &LHS, const Twine &RHS)
Twine operator+ (const char *LHS, const StringRef &RHS)
 Additional overload to guarantee simplified codegen; this is equivalent to concat().
Twine operator+ (const StringRef &LHS, const char *RHS)
 Additional overload to guarantee simplified codegen; this is equivalent to concat().
std::ostream & operator<< (std::ostream &OS, const Twine &RHS)

Variables

const unsigned int maxExponent = 16383
const unsigned int maxPrecision = 113
const unsigned int maxPowerOfFiveExponent = maxExponent + maxPrecision - 1
const unsigned int maxPowerOfFiveParts
const unsigned int host_char_bit = 8
const unsigned int integerPartWidth

Typedef Documentation

typedef signed short llvm::exponent_t
typedef uint64_t llvm::integerPart

Enumeration Type Documentation

Enumerator:
lfExactlyZero 
lfLessThanHalf 
lfExactlyHalf 
lfMoreThanHalf 

Function Documentation

int64_t llvm::abs64 ( int64_t  x  )  [inline]

abs64 - absolute value of a 64-bit int.

Not all environments support "abs" on whatever their name for the 64-bit int type is. The absolute value of the largest negative number is undefined, as with "abs".

template<typename T >
static unsigned llvm::alignOf (  )  [inline, static]

alignOf - A templated function that returns the minimum alignment of of a type.

This provides no extra functionality beyond the AlignOf class besides some cosmetic cleanliness. Example usage: alignOf<int>() returns the alignment of an int.

double llvm::BitsToDouble ( uint64_t  Bits  )  [inline]

BitsToDouble - This function takes a 64-bit integer and returns the bit equivalent double.

float llvm::BitsToFloat ( uint32_t  Bits  )  [inline]

BitsToFloat - This function takes a 32-bit integer and returns the bit equivalent float.

uint16_t llvm::ByteSwap_16 ( uint16_t  Value  )  [inline]

ByteSwap_16 - This function returns a byte-swapped representation of the 16-bit argument, Value.

uint32_t llvm::ByteSwap_32 ( uint32_t  Value  )  [inline]

ByteSwap_32 - This function returns a byte-swapped representation of the 32-bit argument, Value.

uint64_t llvm::ByteSwap_64 ( uint64_t  Value  )  [inline]

ByteSwap_64 - This function returns a byte-swapped representation of the 64-bit argument, Value.

template<typename T , unsigned N>
static size_t llvm::capacity_in_bytes ( const SmallVector< T, N > &  X  )  [inline, static]
unsigned llvm::CountLeadingOnes_32 ( uint32_t  Value  )  [inline]

CountLeadingOnes_32 - this function performs the operation of counting the number of ones from the most significant bit to the first zero bit.

Ex. CountLeadingOnes_32(0xFF0FFF00) == 8. Returns 32 if the word is all ones.

unsigned llvm::CountLeadingOnes_64 ( uint64_t  Value  )  [inline]

CountLeadingOnes_64 - This function performs the operation of counting the number of ones from the most significant bit to the first zero bit (64 bit edition.

) Returns 64 if the word is all ones.

unsigned llvm::CountLeadingZeros_32 ( uint32_t  Value  )  [inline]

CountLeadingZeros_32 - this function performs the platform optimal form of counting the number of zeros from the most significant bit to the first one bit.

Ex. CountLeadingZeros_32(0x00F000FF) == 8. Returns 32 if the word is zero.

unsigned llvm::CountLeadingZeros_64 ( uint64_t  Value  )  [inline]

CountLeadingZeros_64 - This function performs the platform optimal form of counting the number of zeros from the most significant bit to the first one bit (64 bit edition.

) Returns 64 if the word is zero.

unsigned llvm::CountPopulation_32 ( uint32_t  Value  )  [inline]

CountPopulation_32 - this function counts the number of set bits in a value.

Ex. CountPopulation(0xF000F000) = 8 Returns 0 if the word is zero.

unsigned llvm::CountPopulation_64 ( uint64_t  Value  )  [inline]

CountPopulation_64 - this function counts the number of set bits in a value, (64 bit edition.

)

unsigned llvm::CountTrailingOnes_32 ( uint32_t  Value  )  [inline]

CountTrailingOnes_32 - this function performs the operation of counting the number of ones from the least significant bit to the first zero bit.

Ex. CountTrailingOnes_32(0x00FF00FF) == 8. Returns 32 if the word is all ones.

unsigned llvm::CountTrailingOnes_64 ( uint64_t  Value  )  [inline]

CountTrailingOnes_64 - This function performs the operation of counting the number of ones from the least significant bit to the first zero bit (64 bit edition.

) Returns 64 if the word is all ones.

unsigned llvm::CountTrailingZeros_32 ( uint32_t  Value  )  [inline]

CountTrailingZeros_32 - this function performs the platform optimal form of counting the number of zeros from the least significant bit to the first one bit.

Ex. CountTrailingZeros_32(0xFF00FF00) == 8. Returns 32 if the word is zero.

unsigned llvm::CountTrailingZeros_64 ( uint64_t  Value  )  [inline]

CountTrailingZeros_64 - This function performs the platform optimal form of counting the number of zeros from the least significant bit to the first one bit (64 bit edition.

) Returns 64 if the word is zero.

uint64_t llvm::DoubleToBits ( double  Double  )  [inline]

DoubleToBits - This function takes a double and returns the bit equivalent 64-bit integer.

Note that copying doubles around changes the bits of NaNs on some hosts, notably x86, so this routine cannot be used if these bits are needed.

uint32_t llvm::FloatToBits ( float  Float  )  [inline]

FloatToBits - This function takes a float and returns the bit equivalent 32-bit integer.

Note that copying floats around changes the bits of NaNs on some hosts, notably x86, so this routine cannot be used if these bits are needed.

static std::string llvm::ftostr ( const APFloat &  V  )  [inline, static]
static std::string llvm::ftostr ( double  V  )  [inline, static]
std::pair<StringRef, StringRef> llvm::getToken ( StringRef  Source,
StringRef  Delimiters = " \t\n\v\f\r" 
)

getToken - This function extracts one token from source, ignoring any leading characters that appear in the Delimiters string, and ending the token at any of the characters that appear in the Delimiters string.

If there are no tokens in the source string, an empty string is returned. The function returns a pair containing the extracted token and the remaining tail string.

uint64_t llvm::GreatestCommonDivisor64 ( uint64_t  A,
uint64_t  B 
) [inline]

GreatestCommonDivisor64 - Return the greatest common divisor of the two values using Euclid's algorithm.

static unsigned llvm::HashString ( StringRef  Str,
unsigned  Result = 0 
) [inline, static]

HashString - Hash function for strings.

This is the Bernstein hash function.

static char llvm::hexdigit ( unsigned  X,
bool  LowerCase = false 
) [inline, static]

hexdigit - Return the hexadecimal character for the given number

  • X (which should be less than 16).
uint32_t llvm::Hi_32 ( uint64_t  Value  )  [inline]

Hi_32 - This function returns the high 32 bits of a 64 bit value.

int llvm::IsInf ( double  d  ) 
int llvm::IsInf ( float  f  ) 

Platform-independent wrappers for the C99 isinf() function.

template<unsigned N>
bool llvm::isInt ( int64_t  x  )  [inline]

isInt - Checks if an integer fits into the given bit width.

template<>
bool llvm::isInt< 16 > ( int64_t  x  )  [inline]
template<>
bool llvm::isInt< 32 > ( int64_t  x  )  [inline]
template<>
bool llvm::isInt< 8 > ( int64_t  x  )  [inline]
bool llvm::isIntN ( unsigned  N,
int64_t  x 
) [inline]

isIntN - Checks if an signed integer fits into the given (dynamic) bit width.

bool llvm::isMask_32 ( uint32_t  Value  )  [inline]

isMask_32 - This function returns true if the argument is a sequence of ones starting at the least significant bit with the remainder zero (32 bit version).

Ex. isMask_32(0x0000FFFFU) == true.

bool llvm::isMask_64 ( uint64_t  Value  )  [inline]

isMask_64 - This function returns true if the argument is a sequence of ones starting at the least significant bit with the remainder zero (64 bit version).

int llvm::IsNAN ( double  d  ) 
int llvm::IsNAN ( float  f  ) 

Platform-independent wrappers for the C99 isnan() function.

bool llvm::isPowerOf2_32 ( uint32_t  Value  )  [inline]

isPowerOf2_32 - This function returns true if the argument is a power of two > 0.

Ex. isPowerOf2_32(0x00100000U) == true (32 bit edition.)

bool llvm::isPowerOf2_64 ( uint64_t  Value  )  [inline]

isPowerOf2_64 - This function returns true if the argument is a power of two > 0 (64 bit edition.

)

bool llvm::isShiftedMask_32 ( uint32_t  Value  )  [inline]

isShiftedMask_32 - This function returns true if the argument contains a sequence of ones with the remainder zero (32 bit version.

) Ex. isShiftedMask_32(0x0000FF00U) == true.

bool llvm::isShiftedMask_64 ( uint64_t  Value  )  [inline]

isShiftedMask_64 - This function returns true if the argument contains a sequence of ones with the remainder zero (64 bit version.

)

template<unsigned N>
bool llvm::isUInt ( uint64_t  x  )  [inline]

isUInt - Checks if an unsigned integer fits into the given bit width.

template<>
bool llvm::isUInt< 16 > ( uint64_t  x  )  [inline]
template<>
bool llvm::isUInt< 32 > ( uint64_t  x  )  [inline]
template<>
bool llvm::isUInt< 8 > ( uint64_t  x  )  [inline]
bool llvm::isUIntN ( unsigned  N,
uint64_t  x 
) [inline]

isUIntN - Checks if an unsigned integer fits into the given (dynamic) bit width.

static std::string llvm::itostr ( int64_t  X  )  [inline, static]
uint32_t llvm::Lo_32 ( uint64_t  Value  )  [inline]

Lo_32 - This function returns the low 32 bits of a 64 bit value.

unsigned llvm::Log2_32 ( uint32_t  Value  )  [inline]

Log2_32 - This function returns the floor log base 2 of the specified value, -1 if the value is zero.

(32 bit edition.) Ex. Log2_32(32) == 5, Log2_32(1) == 0, Log2_32(0) == -1, Log2_32(6) == 2

unsigned llvm::Log2_32_Ceil ( uint32_t  Value  )  [inline]

Log2_32_Ceil - This function returns the ceil log base 2 of the specified value, 32 if the value is zero.

(32 bit edition). Ex. Log2_32_Ceil(32) == 5, Log2_32_Ceil(1) == 0, Log2_32_Ceil(6) == 3

unsigned llvm::Log2_64 ( uint64_t  Value  )  [inline]

Log2_64 - This function returns the floor log base 2 of the specified value, -1 if the value is zero.

(64 bit edition.)

unsigned llvm::Log2_64_Ceil ( uint64_t  Value  )  [inline]

Log2_64_Ceil - This function returns the ceil log base 2 of the specified value, 64 if the value is zero.

(64 bit edition.)

static std::string llvm::LowercaseString ( const std::string &  S  )  [inline, static]
template<typename T , size_t N>
ArrayRef<T> llvm::makeArrayRef ( const T(&)  Arr[N]  )  [inline]

Construct an ArrayRef from a C array.

template<typename T >
ArrayRef<T> llvm::makeArrayRef ( const std::vector< T > &  Vec  )  [inline]

Construct an ArrayRef from a std::vector.

template<typename T , unsigned N>
ArrayRef<T> llvm::makeArrayRef ( const SmallVector< T, N > &  Vec  )  [inline]

Construct an ArrayRef from a SmallVector.

template<typename T >
ArrayRef<T> llvm::makeArrayRef ( const SmallVectorImpl< T > &  Vec  )  [inline]

Construct an ArrayRef from a SmallVector.

template<typename T >
ArrayRef<T> llvm::makeArrayRef ( const T *  begin,
const T *  end 
) [inline]

Construct an ArrayRef from a range.

template<typename T >
ArrayRef<T> llvm::makeArrayRef ( const T *  data,
size_t  length 
) [inline]

Construct an ArrayRef from a pointer and length.

template<typename T >
ArrayRef<T> llvm::makeArrayRef ( const T &  OneElt  )  [inline]

Construct an ArrayRef from a single element.

static uint64_t llvm::MinAlign ( uint64_t  A,
uint64_t  B 
) [inline, static]

MinAlign - A and B are either alignments or offsets.

Return the minimum alignment that may be assumed after adding the two together.

static uint64_t llvm::NextPowerOf2 ( uint64_t  A  )  [inline, static]

NextPowerOf2 - Returns the next power of two (in 64-bits) that is strictly greater than A.

Returns zero on overflow.

uint64_t llvm::OffsetToAlignment ( uint64_t  Value,
uint64_t  Align 
) [inline]

OffsetToAlignment - Return the offset to the next integer (mod 2**64) that is greater than or equal to.

  • Value and is a multiple of
  • Align. Align must be non-zero.
bool llvm::operator!= ( StringRef  LHS,
StringRef  RHS 
) [inline]
template<typename T >
bool llvm::operator!= ( T *  LHS,
const ilist_iterator< T > &  RHS 
) [inline]
template<typename T >
bool llvm::operator!= ( const T *  LHS,
const ilist_iterator< const T > &  RHS 
) [inline]
template<typename T >
bool llvm::operator!= ( ArrayRef< T >  LHS,
ArrayRef< T >  RHS 
) [inline]
bool llvm::operator!= ( uint64_t  V1,
const APInt &  V2 
) [inline]
Twine llvm::operator+ ( const StringRef &  LHS,
const char *  RHS 
) [inline]

Additional overload to guarantee simplified codegen; this is equivalent to concat().

Twine llvm::operator+ ( const char *  LHS,
const StringRef &  RHS 
) [inline]

Additional overload to guarantee simplified codegen; this is equivalent to concat().

Twine llvm::operator+ ( const Twine &  LHS,
const Twine &  RHS 
) [inline]
template<typename T >
void llvm::operator+ ( ilist_iterator< T >  ,
int   
) [inline]
template<typename T >
void llvm::operator+ ( int  ,
ilist_iterator< T >   
) [inline]
std::string& llvm::operator+= ( std::string &  buffer,
llvm::StringRef  string 
) [inline]
template<typename T >
void llvm::operator- ( ilist_iterator< T >  ,
int   
) [inline]
template<typename T >
void llvm::operator- ( int  ,
ilist_iterator< T >   
) [inline]
bool llvm::operator< ( StringRef  LHS,
StringRef  RHS 
) [inline]
std::ostream& llvm::operator<< ( std::ostream &  OS,
const Twine &  RHS 
) [inline]
std::ostream& llvm::operator<< ( std::ostream &  OS,
const APSInt &  I 
) [inline]
std::ostream& llvm::operator<< ( std::ostream &  OS,
const APInt &  I 
) [inline]
bool llvm::operator<= ( StringRef  LHS,
StringRef  RHS 
) [inline]
bool llvm::operator== ( StringRef  LHS,
StringRef  RHS 
) [inline]
template<typename T >
bool llvm::operator== ( T *  LHS,
const ilist_iterator< T > &  RHS 
) [inline]
template<typename T >
bool llvm::operator== ( const T *  LHS,
const ilist_iterator< const T > &  RHS 
) [inline]
template<typename T >
bool llvm::operator== ( ArrayRef< T >  LHS,
ArrayRef< T >  RHS 
) [inline]
bool llvm::operator== ( uint64_t  V1,
const APInt &  V2 
) [inline]
bool llvm::operator> ( StringRef  LHS,
StringRef  RHS 
) [inline]
bool llvm::operator>= ( StringRef  LHS,
StringRef  RHS 
) [inline]
void llvm::PrintRecyclerStats ( size_t  Size,
size_t  Align,
size_t  FreeListSize 
)

PrintRecyclingAllocatorStats - Helper for RecyclingAllocator for printing statistics.

uint64_t llvm::RoundUpToAlignment ( uint64_t  Value,
uint64_t  Align 
) [inline]

RoundUpToAlignment - Returns the next integer (mod 2**64) that is greater than or equal to.

  • Value and is a multiple of
  • Align. Align must be non-zero.

Examples: RoundUpToAlignment(5, 8) = 8 RoundUpToAlignment(17, 8) = 24 RoundUpToAlignment(~0LL, 8) = 0

template<unsigned B>
int32_t llvm::SignExtend32 ( uint32_t  x  )  [inline]

SignExtend32 - Sign extend B-bit number x to 32-bit int.

Usage int32_t r = SignExtend32<5>(x);

template<unsigned B>
int64_t llvm::SignExtend64 ( uint64_t  x  )  [inline]

SignExtend64 - Sign extend B-bit number x to 64-bit int.

Usage int64_t r = SignExtend64<5>(x);

void llvm::SplitString ( StringRef  Source,
SmallVectorImpl< StringRef > &  OutFragments,
StringRef  Delimiters = " \t\n\v\f\r" 
)

SplitString - Split up the specified string according to the specified delimiters, appending the result fragments to the output list.

StringRef::size_type llvm::StrInStrNoCase ( StringRef  s1,
StringRef  s2 
)

StrInStrNoCase - Portable version of strcasestr.

Locates the first occurrence of string 's1' in string 's2', ignoring case. Returns the offset of s2 in s1 or npos if s2 cannot be found.

template<class T >
void llvm::swap ( OwningArrayPtr< T > &  a,
OwningArrayPtr< T > &  b 
) [inline]
template<class T >
void llvm::swap ( OwningPtr< T > &  a,
OwningPtr< T > &  b 
) [inline]
static std::string llvm::UppercaseString ( const std::string &  S  )  [inline, static]
template<typename IntTy >
static char* llvm::utohex_buffer ( IntTy  X,
char *  BufferEnd 
) [inline, static]

utohex_buffer - Emit the specified number into the buffer specified by BufferEnd, returning a pointer to the start of the string.

This can be used like this: (note that the buffer must be large enough to handle any number): char Buffer[40]; printf("0x%s", utohex_buffer(X, Buffer+40));

This should only be used with unsigned types.

static std::string llvm::utohexstr ( uint64_t  X  )  [inline, static]
static std::string llvm::utostr ( uint64_t  X,
bool  isNeg = false 
) [inline, static]
static std::string llvm::utostr_32 ( uint32_t  X,
bool  isNeg = false 
) [inline, static]

Variable Documentation

const unsigned int llvm::host_char_bit = 8
const unsigned int llvm::integerPartWidth
Initial value:
 host_char_bit *
    static_cast<unsigned int>(sizeof(integerPart))
const unsigned int llvm::maxExponent = 16383
const unsigned int llvm::maxPowerOfFiveParts
Initial value:
 2 + ((maxPowerOfFiveExponent * 815)
                                                / (351 * integerPartWidth))
const unsigned int llvm::maxPrecision = 113

Generated on 2 Nov 2013 for Galois by  doxygen 1.6.1