16 #ifndef LLVM_SUPPORT_SHA1_H 17 #define LLVM_SUPPORT_SHA1_H 25 template <
typename T>
class ArrayRef;
63 enum { BLOCK_LENGTH = 64 };
64 enum { HASH_LENGTH = 20 };
69 uint8_t
C[BLOCK_LENGTH];
78 uint32_t HashResult[HASH_LENGTH / 4];
81 void writebyte(uint8_t data);
83 void addUncounted(uint8_t data);
This class represents lattice values for constants.
LLVM_NODISCARD LLVM_ATTRIBUTE_ALWAYS_INLINE size_t size() const
size - Get the string size.
A class that wrap the SHA1 algorithm.
void init()
Reinitialize the internal state.
LLVM_NODISCARD LLVM_ATTRIBUTE_ALWAYS_INLINE const char * data() const
data - Get a pointer to the start of the string (which may not be null terminated).
void update(StringRef Str)
Digest more data.
uint32_t State[HASH_LENGTH/4]
StringRef result()
Return a reference to the current raw 160-bits SHA1 for the digested data since the last call to init...
void update(ArrayRef< uint8_t > Data)
Digest more data.
static std::array< uint8_t, 20 > hash(ArrayRef< uint8_t > Data)
Returns a raw 160-bit SHA1 hash for the given data.
uint32_t L[BLOCK_LENGTH/4]
union llvm::SHA1::@315::@316 Buffer
StringRef - Represent a constant reference to a string, i.e.