Motr  M0
arith.h File Reference
#include "lib/types.h"
#include "lib/assert.h"
Include dependency graph for arith.h:

Go to the source code of this file.

Macros

#define __MOTR_LIB_ARITH_H__
 
#define min_type(t, a, b)
 
#define max_type(t, a, b)
 
#define min_check(a, b)
 
#define max_check(a, b)
 
#define min3(a, b, c)   (min_check((a), min_check((b), (c))))
 
#define max3(a, b, c)   (max_check((a), max_check((b), (c))))
 
#define M0_IS_8ALIGNED(val)   ((((uint64_t)(val)) & 07) == 0)
 
#define M0_3WAY(v0, v1)
 
#define M0_SWAP(v0, v1)
 
#define M0_CNT_DEC(cnt)
 
#define M0_CNT_INC(cnt)
 

Functions

static int32_t min32 (int32_t a, int32_t b)
 
static int32_t max32 (int32_t a, int32_t b)
 
static int64_t min64 (int64_t a, int64_t b)
 
static int64_t max64 (int64_t a, int64_t b)
 
static uint32_t min32u (uint32_t a, uint32_t b)
 
static uint32_t max32u (uint32_t a, uint32_t b)
 
static uint64_t min64u (uint64_t a, uint64_t b)
 
static uint64_t max64u (uint64_t a, uint64_t b)
 
M0_INTERNAL bool m0_mod_gt (uint64_t x0, uint64_t x1)
 
M0_INTERNAL bool m0_mod_ge (uint64_t x0, uint64_t x1)
 
static uint64_t m0_clip64u (uint64_t lo, uint64_t hi, uint64_t x)
 
M0_INTERNAL uint64_t m0_rnd (uint64_t max, uint64_t *seed)
 
M0_INTERNAL uint64_t m0_rnd64 (uint64_t *seed)
 
M0_INTERNAL uint64_t m0_gcd64 (uint64_t p, uint64_t q)
 
static bool m0_is_po2 (uint64_t val)
 
static unsigned m0_log2 (uint64_t val)
 
static uint64_t m0_align (uint64_t val, uint64_t alignment)
 
static bool m0_is_aligned (uint64_t val, uint64_t alignment)
 
static bool m0_addu64_will_overflow (uint64_t a, uint64_t b)
 
static uint64_t m0_enc (uint64_t width, uint64_t row, uint64_t column)
 
static void m0_dec (uint64_t width, uint64_t pos, uint64_t *row, uint64_t *column)
 

Macro Definition Documentation

◆ __MOTR_LIB_ARITH_H__

#define __MOTR_LIB_ARITH_H__

Definition at line 26 of file arith.h.