#include "llvm/Support/MD5.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Endian.h"
#include <array>
#include <cstdint>
#include <cstring>
Go to the source code of this file.
|
#define | F(x, y, z) ((z) ^ ((x) & ((y) ^ (z)))) |
|
#define | G(x, y, z) ((y) ^ ((z) & ((x) ^ (y)))) |
|
#define | H(x, y, z) ((x) ^ (y) ^ (z)) |
|
#define | I(x, y, z) ((y) ^ ((x) | ~(z))) |
|
#define | STEP(f, a, b, c, d, x, t, s) |
|
#define | SET(n) |
|
#define | GET(n) (InternalState.block[(n)]) |
|
#define F |
( |
|
x, |
|
|
|
y, |
|
|
|
z |
|
) |
| ((z) ^ ((x) & ((y) ^ (z)))) |
#define G |
( |
|
x, |
|
|
|
y, |
|
|
|
z |
|
) |
| ((y) ^ ((z) & ((x) ^ (y)))) |
◆ GET
#define H |
( |
|
x, |
|
|
|
y, |
|
|
|
z |
|
) |
| ((x) ^ (y) ^ (z)) |
#define I |
( |
|
x, |
|
|
|
y, |
|
|
|
z |
|
) |
| ((y) ^ ((x) | ~(z))) |
◆ SET
Value: (InternalState.block[(n)] = (MD5_u32plus)ptr[(n)*4] | \
((MD5_u32plus)ptr[(n)*4 + 1] << 8) | \
((MD5_u32plus)ptr[(n)*4 + 2] << 16) | \
((MD5_u32plus)ptr[(n)*4 + 3] << 24))
Definition at line 68 of file MD5.cpp.
◆ STEP
#define STEP |
( |
|
f, |
|
|
|
a, |
|
|
|
b, |
|
|
|
c, |
|
|
|
d, |
|
|
|
x, |
|
|
|
t, |
|
|
|
s |
|
) |
| |
Value: (a) += f((b), (c), (d)) + (x) + (t); \
(a) = (((a) << (s)) | (((a) & 0xffffffff) >> (32 - (s)))); \
(a) += (b);
Definition at line 61 of file MD5.cpp.