LLVM API Documentation
#include "llvm/Support/AlignOf.h"
#include "llvm/Support/Host.h"
#include "llvm/Support/SwapByteOrder.h"
Go to the source code of this file.
Classes | |
struct | llvm::support::detail::PickAlignment< T, alignment > |
::value is either alignment, or alignof(T) if alignment is 0. More... | |
struct | llvm::support::detail::packed_endian_specific_integral< value_type, endian, alignment > |
struct | llvm::support::detail::packed_endian_specific_integral< value_type, endian, alignment >::ref |
Namespaces | |
namespace | llvm |
List of target independent CodeGen pass IDs. | |
namespace | llvm::support |
namespace | llvm::support::detail |
namespace | llvm::support::endian |
Typedefs | |
typedef detail::packed_endian_specific_integral < uint16_t, little, unaligned > | llvm::support::ulittle16_t |
typedef detail::packed_endian_specific_integral < uint32_t, little, unaligned > | llvm::support::ulittle32_t |
typedef detail::packed_endian_specific_integral < uint64_t, little, unaligned > | llvm::support::ulittle64_t |
typedef detail::packed_endian_specific_integral < int16_t, little, unaligned > | llvm::support::little16_t |
typedef detail::packed_endian_specific_integral < int32_t, little, unaligned > | llvm::support::little32_t |
typedef detail::packed_endian_specific_integral < int64_t, little, unaligned > | llvm::support::little64_t |
typedef detail::packed_endian_specific_integral < uint16_t, little, aligned > | llvm::support::aligned_ulittle16_t |
typedef detail::packed_endian_specific_integral < uint32_t, little, aligned > | llvm::support::aligned_ulittle32_t |
typedef detail::packed_endian_specific_integral < uint64_t, little, aligned > | llvm::support::aligned_ulittle64_t |
typedef detail::packed_endian_specific_integral < int16_t, little, aligned > | llvm::support::aligned_little16_t |
typedef detail::packed_endian_specific_integral < int32_t, little, aligned > | llvm::support::aligned_little32_t |
typedef detail::packed_endian_specific_integral < int64_t, little, aligned > | llvm::support::aligned_little64_t |
typedef detail::packed_endian_specific_integral < uint16_t, big, unaligned > | llvm::support::ubig16_t |
typedef detail::packed_endian_specific_integral < uint32_t, big, unaligned > | llvm::support::ubig32_t |
typedef detail::packed_endian_specific_integral < uint64_t, big, unaligned > | llvm::support::ubig64_t |
typedef detail::packed_endian_specific_integral < int16_t, big, unaligned > | llvm::support::big16_t |
typedef detail::packed_endian_specific_integral < int32_t, big, unaligned > | llvm::support::big32_t |
typedef detail::packed_endian_specific_integral < int64_t, big, unaligned > | llvm::support::big64_t |
typedef detail::packed_endian_specific_integral < uint16_t, big, aligned > | llvm::support::aligned_ubig16_t |
typedef detail::packed_endian_specific_integral < uint32_t, big, aligned > | llvm::support::aligned_ubig32_t |
typedef detail::packed_endian_specific_integral < uint64_t, big, aligned > | llvm::support::aligned_ubig64_t |
typedef detail::packed_endian_specific_integral < int16_t, big, aligned > | llvm::support::aligned_big16_t |
typedef detail::packed_endian_specific_integral < int32_t, big, aligned > | llvm::support::aligned_big32_t |
typedef detail::packed_endian_specific_integral < int64_t, big, aligned > | llvm::support::aligned_big64_t |
typedef detail::packed_endian_specific_integral < uint16_t, native, unaligned > | llvm::support::unaligned_uint16_t |
typedef detail::packed_endian_specific_integral < uint32_t, native, unaligned > | llvm::support::unaligned_uint32_t |
typedef detail::packed_endian_specific_integral < uint64_t, native, unaligned > | llvm::support::unaligned_uint64_t |
typedef detail::packed_endian_specific_integral < int16_t, native, unaligned > | llvm::support::unaligned_int16_t |
typedef detail::packed_endian_specific_integral < int32_t, native, unaligned > | llvm::support::unaligned_int32_t |
typedef detail::packed_endian_specific_integral < int64_t, native, unaligned > | llvm::support::unaligned_int64_t |
Enumerations | |
enum | llvm::support::endianness { llvm::support::big, llvm::support::little, llvm::support::native } |
enum | { llvm::support::aligned = 0, llvm::support::unaligned = 1 } |
Functions | |
template<typename value_type , endianness endian> | |
value_type | llvm::support::endian::byte_swap (value_type value) |
Swap the bytes of value to match the given endianness. | |
template<typename value_type , endianness endian, std::size_t alignment> | |
value_type | llvm::support::endian::read (const void *memory) |
Read a value of a particular endianness from memory. | |
template<typename value_type , endianness endian, std::size_t alignment> | |
value_type | llvm::support::endian::readNext (const unsigned char *&memory) |
template<typename value_type , endianness endian, std::size_t alignment> | |
void | llvm::support::endian::write (void *memory, value_type value) |
Write a value to memory with a particular endianness. |