Bitcoin Core  26.99.0
P2P Digital Currency
Macros | Functions
chacha20.cpp File Reference
#include <crypto/common.h>
#include <crypto/chacha20.h>
#include <support/cleanse.h>
#include <span.h>
#include <algorithm>
#include <string.h>
Include dependency graph for chacha20.cpp:

Go to the source code of this file.

Macros

#define QUARTERROUND(a, b, c, d)
 
#define REPEAT10(a)   do { {a}; {a}; {a}; {a}; {a}; {a}; {a}; {a}; {a}; {a}; } while(0)
 

Functions

constexpr static uint32_t rotl32 (uint32_t v, int c)
 

Macro Definition Documentation

◆ QUARTERROUND

#define QUARTERROUND (   a,
  b,
  c,
 
)
Value:
a += b; d = rotl32(d ^ a, 16); \
c += d; b = rotl32(b ^ c, 12); \
a += b; d = rotl32(d ^ a, 8); \
c += d; b = rotl32(b ^ c, 7);
constexpr static uint32_t rotl32(uint32_t v, int c)
Definition: chacha20.cpp:16

Definition at line 18 of file chacha20.cpp.

◆ REPEAT10

#define REPEAT10 (   a)    do { {a}; {a}; {a}; {a}; {a}; {a}; {a}; {a}; {a}; {a}; } while(0)

Definition at line 24 of file chacha20.cpp.

Function Documentation

◆ rotl32()

constexpr static uint32_t rotl32 ( uint32_t  v,
int  c 
)
inlinestaticconstexpr

Definition at line 16 of file chacha20.cpp.