Bitcoin Core  27.99.0
P2P Digital Currency
Functions
int128_struct_impl.h File Reference
#include "int128.h"
#include "util.h"
Include dependency graph for int128_struct_impl.h:

Go to the source code of this file.

Functions

static SECP256K1_INLINE uint64_t secp256k1_umul128 (uint64_t a, uint64_t b, uint64_t *hi)
 
static SECP256K1_INLINE int64_t secp256k1_mul128 (int64_t a, int64_t b, int64_t *hi)
 
static SECP256K1_INLINE void secp256k1_u128_load (secp256k1_uint128 *r, uint64_t hi, uint64_t lo)
 
static SECP256K1_INLINE void secp256k1_u128_mul (secp256k1_uint128 *r, uint64_t a, uint64_t b)
 
static SECP256K1_INLINE void secp256k1_u128_accum_mul (secp256k1_uint128 *r, uint64_t a, uint64_t b)
 
static SECP256K1_INLINE void secp256k1_u128_accum_u64 (secp256k1_uint128 *r, uint64_t a)
 
static SECP256K1_INLINE void secp256k1_u128_rshift (secp256k1_uint128 *r, unsigned int n)
 
static SECP256K1_INLINE uint64_t secp256k1_u128_to_u64 (const secp256k1_uint128 *a)
 
static SECP256K1_INLINE uint64_t secp256k1_u128_hi_u64 (const secp256k1_uint128 *a)
 
static SECP256K1_INLINE void secp256k1_u128_from_u64 (secp256k1_uint128 *r, uint64_t a)
 
static SECP256K1_INLINE int secp256k1_u128_check_bits (const secp256k1_uint128 *r, unsigned int n)
 
static SECP256K1_INLINE void secp256k1_i128_load (secp256k1_int128 *r, int64_t hi, uint64_t lo)
 
static SECP256K1_INLINE void secp256k1_i128_mul (secp256k1_int128 *r, int64_t a, int64_t b)
 
static SECP256K1_INLINE void secp256k1_i128_accum_mul (secp256k1_int128 *r, int64_t a, int64_t b)
 
static SECP256K1_INLINE void secp256k1_i128_dissip_mul (secp256k1_int128 *r, int64_t a, int64_t b)
 
static SECP256K1_INLINE void secp256k1_i128_det (secp256k1_int128 *r, int64_t a, int64_t b, int64_t c, int64_t d)
 
static SECP256K1_INLINE void secp256k1_i128_rshift (secp256k1_int128 *r, unsigned int n)
 
static SECP256K1_INLINE uint64_t secp256k1_i128_to_u64 (const secp256k1_int128 *a)
 
static SECP256K1_INLINE int64_t secp256k1_i128_to_i64 (const secp256k1_int128 *a)
 
static SECP256K1_INLINE void secp256k1_i128_from_i64 (secp256k1_int128 *r, int64_t a)
 
static SECP256K1_INLINE int secp256k1_i128_eq_var (const secp256k1_int128 *a, const secp256k1_int128 *b)
 
static SECP256K1_INLINE int secp256k1_i128_check_pow2 (const secp256k1_int128 *r, unsigned int n, int sign)
 

Function Documentation

◆ secp256k1_i128_accum_mul()

static SECP256K1_INLINE void secp256k1_i128_accum_mul ( secp256k1_int128 r,
int64_t  a,
int64_t  b 
)
static

Definition at line 123 of file int128_struct_impl.h.

Here is the call graph for this function:

◆ secp256k1_i128_check_pow2()

static SECP256K1_INLINE int secp256k1_i128_check_pow2 ( const secp256k1_int128 r,
unsigned int  n,
int  sign 
)
static

Definition at line 198 of file int128_struct_impl.h.

◆ secp256k1_i128_det()

static SECP256K1_INLINE void secp256k1_i128_det ( secp256k1_int128 r,
int64_t  a,
int64_t  b,
int64_t  c,
int64_t  d 
)
static

Definition at line 160 of file int128_struct_impl.h.

Here is the call graph for this function:

◆ secp256k1_i128_dissip_mul()

static SECP256K1_INLINE void secp256k1_i128_dissip_mul ( secp256k1_int128 r,
int64_t  a,
int64_t  b 
)
static

Definition at line 142 of file int128_struct_impl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ secp256k1_i128_eq_var()

static SECP256K1_INLINE int secp256k1_i128_eq_var ( const secp256k1_int128 a,
const secp256k1_int128 b 
)
static

Definition at line 194 of file int128_struct_impl.h.

◆ secp256k1_i128_from_i64()

static SECP256K1_INLINE void secp256k1_i128_from_i64 ( secp256k1_int128 r,
int64_t  a 
)
static

Definition at line 189 of file int128_struct_impl.h.

◆ secp256k1_i128_load()

static SECP256K1_INLINE void secp256k1_i128_load ( secp256k1_int128 r,
int64_t  hi,
uint64_t  lo 
)
static

Definition at line 112 of file int128_struct_impl.h.

◆ secp256k1_i128_mul()

static SECP256K1_INLINE void secp256k1_i128_mul ( secp256k1_int128 r,
int64_t  a,
int64_t  b 
)
static

Definition at line 117 of file int128_struct_impl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ secp256k1_i128_rshift()

static SECP256K1_INLINE void secp256k1_i128_rshift ( secp256k1_int128 r,
unsigned int  n 
)
static

Definition at line 168 of file int128_struct_impl.h.

◆ secp256k1_i128_to_i64()

static SECP256K1_INLINE int64_t secp256k1_i128_to_i64 ( const secp256k1_int128 a)
static

Definition at line 183 of file int128_struct_impl.h.

Here is the call graph for this function:

◆ secp256k1_i128_to_u64()

static SECP256K1_INLINE uint64_t secp256k1_i128_to_u64 ( const secp256k1_int128 a)
static

Definition at line 179 of file int128_struct_impl.h.

Here is the caller graph for this function:

◆ secp256k1_mul128()

static SECP256K1_INLINE int64_t secp256k1_mul128 ( int64_t  a,
int64_t  b,
int64_t *  hi 
)
static

Definition at line 42 of file int128_struct_impl.h.

Here is the caller graph for this function:

◆ secp256k1_u128_accum_mul()

static SECP256K1_INLINE void secp256k1_u128_accum_mul ( secp256k1_uint128 r,
uint64_t  a,
uint64_t  b 
)
static

Definition at line 62 of file int128_struct_impl.h.

Here is the call graph for this function:

◆ secp256k1_u128_accum_u64()

static SECP256K1_INLINE void secp256k1_u128_accum_u64 ( secp256k1_uint128 r,
uint64_t  a 
)
static

Definition at line 69 of file int128_struct_impl.h.

◆ secp256k1_u128_check_bits()

static SECP256K1_INLINE int secp256k1_u128_check_bits ( const secp256k1_uint128 r,
unsigned int  n 
)
static

Definition at line 106 of file int128_struct_impl.h.

◆ secp256k1_u128_from_u64()

static SECP256K1_INLINE void secp256k1_u128_from_u64 ( secp256k1_uint128 r,
uint64_t  a 
)
static

Definition at line 101 of file int128_struct_impl.h.

◆ secp256k1_u128_hi_u64()

static SECP256K1_INLINE uint64_t secp256k1_u128_hi_u64 ( const secp256k1_uint128 a)
static

Definition at line 97 of file int128_struct_impl.h.

◆ secp256k1_u128_load()

static SECP256K1_INLINE void secp256k1_u128_load ( secp256k1_uint128 r,
uint64_t  hi,
uint64_t  lo 
)
static

Definition at line 53 of file int128_struct_impl.h.

◆ secp256k1_u128_mul()

static SECP256K1_INLINE void secp256k1_u128_mul ( secp256k1_uint128 r,
uint64_t  a,
uint64_t  b 
)
static

Definition at line 58 of file int128_struct_impl.h.

Here is the call graph for this function:

◆ secp256k1_u128_rshift()

static SECP256K1_INLINE void secp256k1_u128_rshift ( secp256k1_uint128 r,
unsigned int  n 
)
static

Definition at line 77 of file int128_struct_impl.h.

◆ secp256k1_u128_to_u64()

static SECP256K1_INLINE uint64_t secp256k1_u128_to_u64 ( const secp256k1_uint128 a)
static

Definition at line 93 of file int128_struct_impl.h.

◆ secp256k1_umul128()

static SECP256K1_INLINE uint64_t secp256k1_umul128 ( uint64_t  a,
uint64_t  b,
uint64_t *  hi 
)
static

Definition at line 32 of file int128_struct_impl.h.

Here is the caller graph for this function: