|
| template<typename value_type , endianness endian> |
| value_type | byte_swap (value_type value) |
| | Swap the bytes of value to match the given endianness. More...
|
| |
| template<typename value_type , endianness endian, std::size_t alignment> |
| value_type | read (const void *memory) |
| | Read a value of a particular endianness from memory. More...
|
| |
| template<typename value_type , endianness endian, std::size_t alignment, typename CharT > |
| value_type | readNext (const CharT *&memory) |
| | Read a value of a particular endianness from a buffer, and increment the buffer past that value. More...
|
| |
| template<typename value_type , endianness endian, std::size_t alignment> |
| void | write (void *memory, value_type value) |
| | Write a value to memory with a particular endianness. More...
|
| |
| template<typename value_type , endianness endian, std::size_t alignment> |
| value_type | readAtBitAlignment (const void *memory, uint64_t startBit) |
| | Read a value of a particular endianness from memory, for a location that starts at the given bit offset within the first byte. More...
|
| |
| template<typename value_type , endianness endian, std::size_t alignment> |
| void | writeAtBitAlignment (void *memory, value_type value, uint64_t startBit) |
| | Write a value to memory with a particular endianness, for a location that starts at the given bit offset within the first byte. More...
|
| |
| template<typename T , endianness E> |
| T | read (const void *P) |
| |
| template<endianness E> |
| uint16_t | read16 (const void *P) |
| |
| template<endianness E> |
| uint32_t | read32 (const void *P) |
| |
| template<endianness E> |
| uint64_t | read64 (const void *P) |
| |
| uint16_t | read16le (const void *P) |
| |
| uint32_t | read32le (const void *P) |
| |
| uint64_t | read64le (const void *P) |
| |
| uint16_t | read16be (const void *P) |
| |
| uint32_t | read32be (const void *P) |
| |
| uint64_t | read64be (const void *P) |
| |
| template<typename T , endianness E> |
| void | write (void *P, T V) |
| |
| template<endianness E> |
| void | write16 (void *P, uint16_t V) |
| |
| template<endianness E> |
| void | write32 (void *P, uint32_t V) |
| |
| template<endianness E> |
| void | write64 (void *P, uint64_t V) |
| |
| void | write16le (void *P, uint16_t V) |
| |
| void | write32le (void *P, uint32_t V) |
| |
| void | write64le (void *P, uint64_t V) |
| |
| void | write16be (void *P, uint16_t V) |
| |
| void | write32be (void *P, uint32_t V) |
| |
| void | write64be (void *P, uint64_t V) |
| |
template<typename value_type , endianness endian, std::size_t alignment>
| value_type llvm::support::endian::readAtBitAlignment |
( |
const void * |
memory, |
|
|
uint64_t |
startBit |
|
) |
| |
|
inline |
Read a value of a particular endianness from memory, for a location that starts at the given bit offset within the first byte.
Definition at line 86 of file Endian.h.
References assert(), and LLVM_ASSUME_ALIGNED.
template<typename value_type , endianness endian, std::size_t alignment, typename CharT >
| value_type llvm::support::endian::readNext |
( |
const CharT *& |
memory | ) |
|
|
inline |
Read a value of a particular endianness from a buffer, and increment the buffer past that value.
Definition at line 62 of file Endian.h.
template<typename value_type , endianness endian, std::size_t alignment>
| void llvm::support::endian::writeAtBitAlignment |
( |
void * |
memory, |
|
|
value_type |
value, |
|
|
uint64_t |
startBit |
|
) |
| |
|
inline |
Write a value to memory with a particular endianness, for a location that starts at the given bit offset within the first byte.
Definition at line 120 of file Endian.h.
References assert(), and LLVM_ASSUME_ALIGNED.