#include "lib/vec.h"
#include "lib/memory.h"
#include "lib/misc.h"
#include "lib/arith.h"
#include "lib/ub.h"
#include "ut/ut.h"
#include "lib/time.h"
#include "lib/varr.h"
#include "lib/varr_private.h"
#include "lib/finject.h"
#include <limits.h>
Go to the source code of this file.
|
enum | data_types { DT_ATOMIC_8,
DT_ATOMIC_64,
DT_POWTWO,
DT_NON_POWTWO
} |
|
enum | sizes_and_shifts {
BUFF_SIZE = 32,
BUFF_SHIFT = 5,
DT_ATOMIC_8_SHIFT = 0,
DT_ATOMIC_64_SHIFT = 3,
DT_POWTWO_SHIFT = 4,
DT_NON_POWTWO_SHIFT = BUFF_SHIFT
} |
|
enum | misc_params { MAX_DEPTH = 11,
MAX_OBJ_NR = 26000,
MAX_TEST_DEPTH = 6,
MAX_BUFFERS = 4096
} |
|
enum | { UB_ITER = 1
} |
|
◆ test_iterate
#define test_iterate |
( |
|
varr, |
|
|
|
ele, |
|
|
|
dt, |
|
|
|
buff_nr |
|
) |
| |
Value:({ \
struct
m0_varr *__varr_ = (varr); \
typeof(ele) __ele; \
uint64_t __buff_nr = (buff_nr); \
uint64_t __nr; \
int __rc; \
uint64_t __step; \
M0_SET0(__varr_); \
M0_ASSERT(__rc == 0); \
m0_varr_iter(__varr_, typeof(__ele),
i,
obj, 0, \
obj_init((
void*)
obj,
i, __dt); \
m0_varr_for (__varr_, typeof(__ele),
i,
obj) { \
obj_sanity_check(
obj,
i, __dt); \
for (__step = 2; __step <= __nr; ++__step) { \
m0_varr_iter(__varr_, typeof(__ele),
i,
obj, 0, \
obj_sanity_check((
void *)
obj,
i, __dt); \
} \
m0_varr_fini(__varr_); \
})
static size_t size_get(enum data_types dt)
M0_INTERNAL uint64_t m0_varr_size(const struct m0_varr *arr)
M0_INTERNAL int m0_varr_init(struct m0_varr *arr, uint64_t nr, size_t size, size_t bufsize)
uint64_t array_len_compute(uint64_t buff_nr, enum data_types dt)
Definition at line 94 of file varr.c.
◆ anonymous enum
◆ data_types
Enumerator |
---|
DT_ATOMIC_8 | |
DT_ATOMIC_64 | |
DT_POWTWO | |
DT_NON_POWTWO | |
Definition at line 40 of file varr.c.
◆ misc_params
Enumerator |
---|
MAX_DEPTH | |
MAX_OBJ_NR | |
MAX_TEST_DEPTH | |
MAX_BUFFERS | |
Definition at line 59 of file varr.c.
◆ sizes_and_shifts
Enumerator |
---|
BUFF_SIZE | |
BUFF_SHIFT | |
DT_ATOMIC_8_SHIFT | |
DT_ATOMIC_64_SHIFT | |
DT_POWTWO_SHIFT | |
DT_NON_POWTWO_SHIFT | |
Definition at line 47 of file varr.c.
◆ array_len_compute()
uint64_t array_len_compute |
( |
uint64_t |
buff_nr, |
|
|
enum data_types |
dt |
|
) |
| |
◆ int_summation()
static uint16_t int_summation |
( |
uint8_t |
n | ) |
|
|
static |
◆ M0_BASSERT() [1/7]
◆ M0_BASSERT() [2/7]
◆ M0_BASSERT() [3/7]
◆ M0_BASSERT() [4/7]
M0_BASSERT |
( |
(int) |
M0_0VEC_ALIGN, |
|
|
(int) |
BUFF_SIZE |
|
) |
| |
◆ M0_BASSERT() [5/7]
M0_BASSERT |
( |
! |
M0_0VEC_ALIGN &(M0_0VEC_ALIGN - 1) | ) |
|
◆ M0_BASSERT() [6/7]
◆ M0_BASSERT() [7/7]
◆ obj_init()
static void obj_init |
( |
void * |
obj, |
|
|
uint64_t |
data, |
|
|
enum data_types |
dt |
|
) |
| |
|
static |
◆ obj_sanity_check()
static void obj_sanity_check |
( |
const void * |
obj, |
|
|
uint64_t |
data, |
|
|
enum data_types |
dt |
|
) |
| |
|
static |
◆ shift_get()
◆ size_get()
◆ test_cache()
static void test_cache |
( |
void |
| ) |
|
|
static |
◆ test_depth()
static void test_depth |
( |
uint32_t |
max_depth | ) |
|
|
static |
◆ test_init()
static void test_init |
( |
void |
| ) |
|
|
static |
◆ test_size()
static void test_size |
( |
void |
| ) |
|
|
static |
◆ test_ub_iterate()
void test_ub_iterate |
( |
void |
| ) |
|
◆ test_ut_iterate()
void test_ut_iterate |
( |
uint64_t |
nr | ) |
|
|
static |
◆ test_varr()
◆ tree_sanity_check()
static void tree_sanity_check |
( |
const struct m0_varr * |
varr, |
|
|
uint32_t |
depth |
|
) |
| |
|
static |
◆ varr_ub()
static void varr_ub |
( |
int |
i | ) |
|
|
static |
◆ m0_varr_ub
Initial value:= {
.us_name = "varr-ub",
.us_run = {
{ .ub_name = "varr",
}
}
static void varr_ub(int i)
Definition at line 421 of file varr.c.