diff --git a/lfs.c b/lfs.c index 9392dec0..0164ace3 100644 --- a/lfs.c +++ b/lfs.c @@ -1077,6 +1077,7 @@ static lfs_ssize_t lfsr_data_readleb128(lfs_t *lfs, lfsr_data_t data, return lfs_fromleb128(word, buf, d); } +// TODO really should we bring back GT/EQ/LT as return values here? static int lfsr_data_cmp(lfs_t *lfs, lfsr_data_t data, lfs_off_t off, const void *buffer, lfs_size_t size, int *cmp) { @@ -1565,16 +1566,7 @@ static int lfsr_rbyd_alloc(lfs_t *lfs, lfsr_rbyd_t *rbyd, uint32_t rev) { } static int lfsr_rbyd_fetch(lfs_t *lfs, lfsr_rbyd_t *rbyd, - lfs_block_t block, lfs_size_t trunk, - lfsr_find_t *find) { - // clear any previous state in our find - if (find) { - find->predicted_id = -1; - find->predicted_tag = 0; - find->found_id = -1; - find->found_tag = 0; - } - + lfs_block_t block, lfs_size_t trunk) { // read the revision count and get the crc started uint32_t rev; uint32_t crc = 0; @@ -1692,11 +1684,6 @@ static int lfsr_rbyd_fetch(lfs_t *lfs, lfsr_rbyd_t *rbyd, rbyd->crc = crc; rbyd->trunk = trunk_; rbyd->weight = weight; - - if (find) { - find->found_id = find->predicted_id; - find->found_tag = find->predicted_tag; - } } // found a trunk of a tree? @@ -1724,51 +1711,8 @@ static int lfsr_rbyd_fetch(lfs_t *lfs, lfsr_rbyd_t *rbyd, } } else { - lfs_ssize_t delta = (lower+upper+w) - weight; + // update current weight weight = lower+upper+w; - lfs_ssize_t id = lower+w-1; - - // adjust any pending finds - if (find && find->predicted_id >= (lfs_ssize_t)lower) { - // pending find removed? - if (find->predicted_id + delta < (lfs_ssize_t)lower) { - find->predicted_id = lower-1; - find->predicted_tag = 0; - } else { - find->predicted_id += delta; - } - } - - // found our find request? - if (find && lfsr_tag_suptype(tag) == LFSR_TAG_NAME) { - // compare with disk - lfs_size_t d = lfs_min(size, find->name_size); - int cmp; - int err = lfsr_bd_cmp(lfs, block, off, d, - find->name, d, - &cmp); - if (err) { - return err; - } - - if (cmp == 0) { - if (size < find->name_size) { - cmp = -1; - } else if (size > find->name_size) { - cmp = +1; - } - } - - // found match? - if (cmp == 0) { - find->predicted_id = id; - find->predicted_tag = tag; - // didn't find a match, but found a better insertion point - } else if (cmp < 0 && id > find->predicted_id) { - find->predicted_id = id; - find->predicted_tag = 0; - } - } // any non-alt terminates the current trunk wastrunk = false; @@ -2913,6 +2857,89 @@ static int lfsr_rbyd_isdegenerate(lfs_t *lfs, const lfsr_rbyd_t *rbyd, } } +// binary search an rbyd for a name, leaving the id_/weight_ with the best +// matching name if not found +static int lfsr_rbyd_namelookup(lfs_t *lfs, const lfsr_rbyd_t *rbyd, + const char *name, lfs_size_t name_size, + lfs_ssize_t *id_, lfsr_tag_t *tag_, lfs_size_t *weight_, + lfsr_data_t *data_) { + // binary search for our name + lfs_ssize_t lower = 0; + lfs_ssize_t upper = rbyd->weight; + + while (lower < upper) { + lfsr_tag_t tag__; + lfs_ssize_t id__; + lfs_size_t weight__; + lfsr_data_t data__; + int err = lfsr_rbyd_lookupnext(lfs, rbyd, + // lookup ~middle id, note we may end up in the middle + // of a weighted id with this + lower + (upper-1-lower)/2, 0, + &id__, &tag__, &weight__, &data__); + if (err) { + LFS_ASSERT(err != LFS_ERR_NOENT); + return err; + } + + // if we have no name or a vestigial name, treat this id as always lt + int cmp; + if (id__-(weight__-1) == 0 + || lfsr_tag_suptype(tag__) != LFSR_TAG_NAME) { + cmp = -1; + + // compare names + } else { + err = lfsr_data_cmp(lfs, data__, 0, name, name_size, &cmp); + if (err) { + return err; + } + } + + // bisect search space + if (cmp > 0) { + upper = id__-weight__ + 1; + + } else if (cmp < 0) { + lower = id__ + 1; + + // keep track of best-matching name so far + if (id_) { + *id_ = id__; + } + if (tag_) { + *tag_ = tag__; + } + if (weight_) { + *weight_ = weight__; + } + if (data_) { + *data_ = data__; + } + + } else { + // found a match? + if (id_) { + *id_ = id__; + } + if (tag_) { + *tag_ = tag__; + } + if (weight_) { + *weight_ = weight__; + } + if (data_) { + *data_ = data__; + } + return 0; + } + } + + // no match, at least update id_/tag_/weight_/data_ with the best + // match so far + return LFS_ERR_NOENT; +} + /// Rbyd b-tree operations /// @@ -3263,10 +3290,10 @@ static int lfsr_btree_parent(lfs_t *lfs, } } -static lfs_ssize_t lfsr_btree_namelookupnext(lfs_t *lfs, - const lfsr_btree_t *btree, const char *name, lfs_size_t name_size, - lfs_size_t *bid_, lfsr_rbyd_t *rbyd_, lfs_ssize_t *rid_, - lfsr_tag_t *tag_, lfs_size_t *weight_, lfsr_data_t *data_) { +static lfs_ssize_t lfsr_btree_namelookup(lfs_t *lfs, const lfsr_btree_t *btree, + const char *name, lfs_size_t name_size, + lfs_size_t *bid_, lfsr_tag_t *tag_, lfs_size_t *weight_, + lfsr_data_t *data_) { // an empty tree? if (lfsr_btree_weight(btree) == 0) { return LFS_ERR_NOENT; @@ -3293,77 +3320,26 @@ static lfs_ssize_t lfsr_btree_namelookupnext(lfs_t *lfs, // descend down the btree looking for our name lfsr_rbyd_t branch = btree->root; lfs_ssize_t bid = 0; - lfsr_find_t find = {.name=name, .name_size=name_size}; while (true) { - // name lookup in our rbyds requires a linear search, so we might as - // well revalidate the rbyd with a fetch - lfsr_rbyd_t branch_; - int err = lfsr_rbyd_fetch(lfs, &branch_, - branch.block, branch.trunk, &find); - if (err) { - if (err == LFS_ERR_CORRUPT) { - LFS_ERROR("Corrupted rbyd found during btree lookup " - "(rbyd=0x%"PRIx32".%"PRIx32", " - "0x%08"PRIx32" != 0x%08"PRIx32")", - branch.block, branch.trunk, - branch_.crc, branch.crc); - } + // lookup our name in the rbyd via binary search + lfs_ssize_t rid__; + lfs_size_t weight__; + int err = lfsr_rbyd_namelookup(lfs, &branch, name, name_size, + &rid__, NULL, &weight__, NULL); + if (err && err != LFS_ERR_NOENT) { return err; } - if (branch_.crc != branch.crc) { - LFS_ERROR("Corrupted rbyd found during btree lookup " - "(rbyd=0x%"PRIx32".%"PRIx32", " - "0x%08"PRIx32" != 0x%08"PRIx32")", - branch.block, branch.trunk, - branch_.crc, branch.crc); - return LFS_ERR_CORRUPT; - } - - LFS_ASSERT(branch_.trunk == branch.trunk); - LFS_ASSERT(branch_.weight == branch.weight); - branch = branch_; - - // assume lowest id if no name found - // - // note this ignore any name attached to the lowest id, this is - // intentional as allowing for "vestigial" names in our blocks helps - // simplify some of the more complicated merge/split interactions - if (find.found_id < 0) { - find.found_id = 0; - } - - // the find may not match exactly, but it will indicate which id we - // should follow - // - // Note that we can't reliably find the weight in fetch. If, during our - // linear search, we match an id that is later deleted, we know id-1 - // should be the new id, but we don't have enough information to - // determine the new weight. So unfortunately we need an additional - // lookup to find the weight. + // the name may not match exactly, but indicates which branch to follow lfsr_tag_t tag__; - lfs_ssize_t rid__; - // TODO do we really need to fetch weight__ if we get it in our - // btree struct? - // TODO maybe only when validating? - lfs_size_t weight__; lfsr_data_t data__; - err = lfsr_rbyd_lookupnext(lfs, &branch, find.found_id, 0, - &rid__, &tag__, &weight__, &data__); + err = lfsr_rbyd_lookupnext(lfs, &branch, rid__, LFSR_TAG_STRUCT, + NULL, &tag__, NULL, &data__); if (err) { LFS_ASSERT(err != LFS_ERR_NOENT); return err; } - if (lfsr_tag_suptype(tag__) == LFSR_TAG_NAME) { - err = lfsr_rbyd_lookupnext(lfs, &branch, rid__, LFSR_TAG_STRUCT, - NULL, &tag__, NULL, &data__); - if (err) { - LFS_ASSERT(err != LFS_ERR_NOENT); - return err; - } - } - // found another branch if (tag__ == LFSR_TAG_BTREE) { // update our bid @@ -3382,12 +3358,6 @@ static lfs_ssize_t lfsr_btree_namelookupnext(lfs_t *lfs, if (bid_) { *bid_ = bid + rid__; } - if (rbyd_) { - *rbyd_ = branch; - } - if (rid_) { - *rid_ = rid__; - } if (tag_) { *tag_ = tag__; } @@ -3456,7 +3426,7 @@ static int lfsr_btree_commit(lfs_t *lfs, // // a strange benefit is we cache the root of our btree this way if (!lfsr_rbyd_isfetched(rbyd)) { - err = lfsr_rbyd_fetch(lfs, rbyd, rbyd->block, rbyd->trunk, NULL); + err = lfsr_rbyd_fetch(lfs, rbyd, rbyd->block, rbyd->trunk); if (err) { return err; } @@ -4617,8 +4587,7 @@ static int lfsr_mdir_alloc(lfs_t *lfs, lfsr_mdir_t *mdir, lfs_ssize_t mid) { } static int lfsr_mdir_fetch(lfs_t *lfs, lfsr_mdir_t *mdir, - lfs_ssize_t mid, lfsr_mpair_t mpair, - lfsr_find_t *find) { + lfs_ssize_t mid, lfsr_mpair_t mpair) { // read both revision counts, try to figure out which block // has the most recent revision uint32_t revs[2] = {0, 0}; @@ -4640,7 +4609,7 @@ static int lfsr_mdir_fetch(lfs_t *lfs, lfsr_mdir_t *mdir, // try to fetch rbyds in the order of most recent to least recent for (int i = 0; i < 2; i++) { - int err = lfsr_rbyd_fetch(lfs, &mdir->rbyd, mpair.blocks[0], 0, find); + int err = lfsr_rbyd_fetch(lfs, &mdir->rbyd, mpair.blocks[0], 0); if (err && err != LFS_ERR_CORRUPT) { return err; } @@ -4721,7 +4690,7 @@ static int lfsr_mtree_lookup(lfs_t *lfs, lfs_ssize_t mid, lfsr_mdir_t *mdir_) { } // fetch mdir - return lfsr_mdir_fetch(lfs, mdir_, mid, mpair, NULL); + return lfsr_mdir_fetch(lfs, mdir_, mid, mpair); } } @@ -4737,7 +4706,7 @@ static int lfsr_mtree_parent(lfs_t *lfs, lfsr_mpair_t child, lfsr_mdir_t mdir; while (true) { // fetch next possible superblock - int err = lfsr_mdir_fetch(lfs, &mdir, -1, mpair, NULL); + int err = lfsr_mdir_fetch(lfs, &mdir, -1, mpair); if (err) { return err; } @@ -5563,8 +5532,7 @@ static int lfsr_mtree_traversal_next(lfs_t *lfs, // if (traversal->mdir.rbyd.trunk == 0) { // fetch the first mroot 0x{0,1} - int err = lfsr_mdir_fetch(lfs, &traversal->mdir, - -1, LFSR_MPAIR(0, 1), NULL); + int err = lfsr_mdir_fetch(lfs, &traversal->mdir, -1, LFSR_MPAIR(0, 1)); if (err) { return err; } @@ -5598,8 +5566,7 @@ static int lfsr_mtree_traversal_next(lfs_t *lfs, return d; } - int err = lfsr_mdir_fetch(lfs, &traversal->mdir, - -1, mpair, NULL); + int err = lfsr_mdir_fetch(lfs, &traversal->mdir, -1, mpair); if (err) { return err; } @@ -5677,7 +5644,7 @@ static int lfsr_mtree_traversal_next(lfs_t *lfs, lfsr_rbyd_t *branch = (lfsr_rbyd_t*)data.buf.buffer; lfsr_rbyd_t branch_; int err = lfsr_rbyd_fetch(lfs, &branch_, - branch->block, branch->trunk, NULL); + branch->block, branch->trunk); if (err) { if (err == LFS_ERR_CORRUPT) { LFS_ERROR("Corrupted rbyd during mtree traversal " @@ -5732,8 +5699,7 @@ static int lfsr_mtree_traversal_next(lfs_t *lfs, return d; } - int err = lfsr_mdir_fetch(lfs, &traversal->mdir, - mid, mpair, NULL); + int err = lfsr_mdir_fetch(lfs, &traversal->mdir, mid, mpair); if (err) { return err; } diff --git a/tests/test_btree.toml b/tests/test_btree.toml index f646692c..3bc82203 100644 --- a/tests/test_btree.toml +++ b/tests/test_btree.toml @@ -2853,8 +2853,8 @@ code = ''' lfs_size_t weight_; lfsr_data_t data_; - lfsr_btree_namelookupnext(&lfs, &btree, "aaa", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => LFS_ERR_NOENT; + lfsr_btree_namelookup(&lfs, &btree, "aaa", 3, + &id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT; ''' [cases.test_btree_find_one] @@ -2887,16 +2887,16 @@ code = ''' lfs_size_t weight_; lfsr_data_t data_; - lfsr_btree_namelookupnext(&lfs, &btree, "aaa", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aaa", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 0); assert(weight_ == 1); lfsr_data_read(&lfs, data_, 0, buffer, 4) => 1; assert(memcmp(buffer, "0", 1) == 0); - lfsr_btree_namelookupnext(&lfs, &btree, "aab", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aab", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 0); assert(weight_ == 1); @@ -2937,24 +2937,24 @@ code = ''' lfs_size_t weight_; lfsr_data_t data_; - lfsr_btree_namelookupnext(&lfs, &btree, "aaa", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aaa", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 0); assert(weight_ == 1); lfsr_data_read(&lfs, data_, 0, buffer, 4) => 1; assert(memcmp(buffer, "0", 1) == 0); - lfsr_btree_namelookupnext(&lfs, &btree, "aab", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aab", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 1); assert(weight_ == 1); lfsr_data_read(&lfs, data_, 0, buffer, 4) => 1; assert(memcmp(buffer, "1", 1) == 0); - lfsr_btree_namelookupnext(&lfs, &btree, "aac", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aac", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 1); assert(weight_ == 1); @@ -2998,32 +2998,32 @@ code = ''' lfs_size_t weight_; lfsr_data_t data_; - lfsr_btree_namelookupnext(&lfs, &btree, "aaa", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aaa", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 0); assert(weight_ == 1); lfsr_data_read(&lfs, data_, 0, buffer, 4) => 1; assert(memcmp(buffer, "0", 1) == 0); - lfsr_btree_namelookupnext(&lfs, &btree, "aab", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aab", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 1); assert(weight_ == 1); lfsr_data_read(&lfs, data_, 0, buffer, 4) => 1; assert(memcmp(buffer, "1", 1) == 0); - lfsr_btree_namelookupnext(&lfs, &btree, "aac", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aac", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 2); assert(weight_ == 1); lfsr_data_read(&lfs, data_, 0, buffer, 4) => 1; assert(memcmp(buffer, "2", 1) == 0); - lfsr_btree_namelookupnext(&lfs, &btree, "aad", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aad", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 2); assert(weight_ == 1); @@ -3067,32 +3067,32 @@ code = ''' lfs_size_t weight_; lfsr_data_t data_; - lfsr_btree_namelookupnext(&lfs, &btree, "aaa", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aaa", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 0); assert(weight_ == 1); lfsr_data_read(&lfs, data_, 0, buffer, 4) => 1; assert(memcmp(buffer, "0", 1) == 0); - lfsr_btree_namelookupnext(&lfs, &btree, "aab", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aab", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 1); assert(weight_ == 1); lfsr_data_read(&lfs, data_, 0, buffer, 4) => 1; assert(memcmp(buffer, "1", 1) == 0); - lfsr_btree_namelookupnext(&lfs, &btree, "aac", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aac", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 2); assert(weight_ == 1); lfsr_data_read(&lfs, data_, 0, buffer, 4) => 1; assert(memcmp(buffer, "2", 1) == 0); - lfsr_btree_namelookupnext(&lfs, &btree, "aad", 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, "aad", 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == 2); assert(weight_ == 1); @@ -3153,8 +3153,8 @@ code = ''' alphas[(i/26/26) % 26], alphas[(i/26) % 26], alphas[i % 26] }; - lfsr_btree_namelookupnext(&lfs, &btree, name, 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, name, 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == i); assert(weight_ == 1); @@ -3268,8 +3268,8 @@ code = ''' lfs_size_t weight_; lfsr_data_t data_; for (lfs_size_t i = 0; i < sim_size; i++) { - lfsr_btree_namelookupnext(&lfs, &btree, sim_names[i], 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, sim_names[i], 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == i); assert(weight_ == 1); @@ -3339,8 +3339,8 @@ code = ''' alphas[(i/26/26) % 26], alphas[(i/26) % 26], alphas[i % 26] }; - lfsr_btree_namelookupnext(&lfs, &btree, name, 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, name, 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == i*W+W-1); assert(weight_ == W); @@ -3493,8 +3493,8 @@ code = ''' weighted_id += sim_weights[j]; } - lfsr_btree_namelookupnext(&lfs, &btree, sim_names[i], 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, sim_names[i], 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == weighted_id+sim_weights[i]-1); assert(weight_ == sim_weights[i]); @@ -3584,8 +3584,8 @@ code = ''' // split btree lfs_size_t split_id; lfsr_data_t split_data; - lfsr_btree_namelookupnext(&lfs, &btree, name, 3, - &split_id, NULL, NULL, NULL, NULL, &split_data) => 0; + lfsr_btree_namelookup(&lfs, &btree, name, 3, + &split_id, NULL, NULL, &split_data) => 0; uint8_t split_buf[4]; lfsr_data_read(&lfs, split_data, 0, split_buf, 4) => 1; if (split_id > id) { @@ -3680,8 +3680,8 @@ code = ''' lfs_size_t weight_; lfsr_data_t data_; for (lfs_size_t i = 0; i < sim_size; i++) { - lfsr_btree_namelookupnext(&lfs, &btree, sim_names[i], 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, sim_names[i], 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == i); assert(weight_ == 1); @@ -3787,8 +3787,8 @@ code = ''' lfs_size_t split_id; lfs_size_t split_weight; lfsr_data_t split_data; - lfsr_btree_namelookupnext(&lfs, &btree, name, 3, - &split_id, NULL, NULL, NULL, &split_weight, + lfsr_btree_namelookup(&lfs, &btree, name, 3, + &split_id, NULL, &split_weight, &split_data) => 0; uint8_t split_buf[4]; lfsr_data_read(&lfs, split_data, 0, split_buf, 4) => 1; @@ -3912,8 +3912,8 @@ code = ''' weighted_id += sim_weights[j]; } - lfsr_btree_namelookupnext(&lfs, &btree, sim_names[i], 3, - &id_, NULL, NULL, &tag_, &weight_, &data_) => 0; + lfsr_btree_namelookup(&lfs, &btree, sim_names[i], 3, + &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_INLINED); assert(id_ == weighted_id+sim_weights[i]-1); assert(weight_ == sim_weights[i]); diff --git a/tests/test_rbyd.toml b/tests/test_rbyd.toml index bc5fb329..ad9247ea 100644 --- a/tests/test_rbyd.toml +++ b/tests/test_rbyd.toml @@ -33,14 +33,14 @@ code = ''' rbyd = init_rbyd; lfs_bd_erase(&lfs, rbyd.block) => 0; lfsr_rbyd_commit(&lfs, &rbyd, NULL, 0) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; // commit with one attribute rbyd = init_rbyd; lfs_bd_erase(&lfs, rbyd.block) => 0; lfsr_rbyd_commit(&lfs, &rbyd, LFSR_ATTRS( LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; // commit with two attributes rbyd = init_rbyd; @@ -48,7 +48,7 @@ code = ''' lfsr_rbyd_commit(&lfs, &rbyd, LFSR_ATTRS( LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4), LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; ''' [cases.test_rbyd_multi_commit] @@ -71,14 +71,14 @@ code = ''' rbyd = init_rbyd; lfs_bd_erase(&lfs, rbyd.block) => 0; lfsr_rbyd_commit(&lfs, &rbyd, NULL, 0) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; // commit with one attribute rbyd = init_rbyd; lfs_bd_erase(&lfs, rbyd.block) => 0; lfsr_rbyd_commit(&lfs, &rbyd, LFSR_ATTRS( LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; // commit with two attributes rbyd = init_rbyd; @@ -87,7 +87,7 @@ code = ''' LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; lfsr_rbyd_commit(&lfs, &rbyd, LFSR_ATTRS( LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; ''' [cases.test_rbyd_commit_fetch_commit] @@ -111,12 +111,12 @@ code = ''' lfs_bd_erase(&lfs, rbyd.block) => 0; lfsr_rbyd_commit(&lfs, &rbyd, LFSR_ATTRS( LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; // commit with the second attribute lfsr_rbyd_commit(&lfs, &rbyd, LFSR_ATTRS( LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; ''' # [cases.test_rbyd_fetchmatch] @@ -151,7 +151,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; @@ -169,7 +169,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -198,7 +198,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -232,7 +232,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -274,7 +274,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; @@ -292,7 +292,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -322,7 +322,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -357,7 +357,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -397,7 +397,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), buffer, 4) => LFS_ERR_NOENT; @@ -413,7 +413,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -434,7 +434,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), buffer, 4) => 4; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), buffer, 4) @@ -455,7 +455,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), buffer, 4) => 4; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), buffer, 4) @@ -489,7 +489,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), buffer, 4) => LFS_ERR_NOENT; @@ -505,7 +505,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -527,7 +527,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), buffer, 4) => 4; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), buffer, 4) @@ -549,7 +549,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), buffer, 4) => 4; lfsr_rbyd_get(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), buffer, 4) @@ -587,7 +587,7 @@ code = ''' LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4), LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -609,7 +609,7 @@ code = ''' LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4), LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -652,7 +652,7 @@ code = ''' LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4), LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -675,7 +675,7 @@ code = ''' LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4), LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -720,7 +720,7 @@ code = ''' LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4), LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -750,7 +750,7 @@ code = ''' LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4), LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -801,7 +801,7 @@ code = ''' LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4), LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -832,7 +832,7 @@ code = ''' LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4), LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -863,7 +863,7 @@ code = ''' LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4), LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -894,7 +894,7 @@ code = ''' LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4), LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -947,7 +947,7 @@ code = ''' LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4), LFSR_ATTR(-1, UATTR(4), 0, "\xdd\xdd\xdd\xdd", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -985,7 +985,7 @@ code = ''' LFSR_ATTR(-1, UATTR(4), 0, "\xdd\xdd\xdd\xdd", 4), LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1023,7 +1023,7 @@ code = ''' LFSR_ATTR(-1, UATTR(4), 0, "\xdd\xdd\xdd\xdd", 4), LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1061,7 +1061,7 @@ code = ''' LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4), LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1119,7 +1119,7 @@ code = ''' LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4), LFSR_ATTR(-1, UATTR(4), 0, "\xdd\xdd\xdd\xdd", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1157,7 +1157,7 @@ code = ''' LFSR_ATTR(-1, UATTR(4), 0, "\xdd\xdd\xdd\xdd", 4), LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1195,7 +1195,7 @@ code = ''' LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4), LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1233,7 +1233,7 @@ code = ''' LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4), LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1294,7 +1294,7 @@ code = ''' LFSR_ATTR(-1, UATTR(4), 0, "\xdd\xdd\xdd\xdd", 4), LFSR_ATTR(-1, UATTR(4), 0, "\xdd\xdd\xdd\xdd", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1335,7 +1335,7 @@ code = ''' LFSR_ATTR(-1, UATTR(4), 0, "\xdd\xdd\xdd\xdd", 4), LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1374,7 +1374,7 @@ code = ''' LFSR_ATTR(-1, UATTR(4), 0, "\xdd\xdd\xdd\xdd", 4), LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1413,7 +1413,7 @@ code = ''' LFSR_ATTR(-1, UATTR(4), 0, "\xdd\xdd\xdd\xdd", 4), LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1476,7 +1476,7 @@ code = ''' LFSR_ATTR(-1, UATTR(4), 0, "\xdd\xdd\xdd\xdd", 4), LFSR_ATTR(-1, UATTR(5), 0, "\xee\xee\xee\xee", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1524,7 +1524,7 @@ code = ''' LFSR_ATTR(-1, UATTR(5), 0, "\xee\xee\xee\xee", 4), LFSR_ATTR(-1, UATTR(3), 0, "\xcc\xcc\xcc\xcc", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1570,7 +1570,7 @@ code = ''' LFSR_ATTR(-1, UATTR(5), 0, "\xee\xee\xee\xee", 4), LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1616,7 +1616,7 @@ code = ''' LFSR_ATTR(-1, UATTR(5), 0, "\xee\xee\xee\xee", 4), LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1685,7 +1685,7 @@ code = ''' LFSR_ATTR(-1, UATTR(5), 0, "\xee\xee\xee\xee", 4), LFSR_ATTR(-1, UATTR(5), 0, "\xee\xee\xee\xee", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1734,7 +1734,7 @@ code = ''' LFSR_ATTR(-1, UATTR(5), 0, "\xee\xee\xee\xee", 4), LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1783,7 +1783,7 @@ code = ''' LFSR_ATTR(-1, UATTR(5), 0, "\xee\xee\xee\xee", 4), LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1854,7 +1854,7 @@ code = ''' LFSR_ATTR(-1, UATTR(5), 0, "\xee\xee\xee\xee", 4), LFSR_ATTR(-1, UATTR(6), 0, "\xff\xff\xff\xff", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1908,7 +1908,7 @@ code = ''' LFSR_ATTR(-1, UATTR(6), 0, "\xff\xff\xff\xff", 4), LFSR_ATTR(-1, UATTR(2), 0, "\xbb\xbb\xbb\xbb", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -1962,7 +1962,7 @@ code = ''' LFSR_ATTR(-1, UATTR(6), 0, "\xff\xff\xff\xff", 4), LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa", 4))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -2054,7 +2054,7 @@ code = ''' lfs_bd_erase(&lfs, rbyd.block) => 0; lfsr_rbyd_commit(&lfs, &rbyd, attrs, N) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; for (unsigned j = 0; j < N; j++) { lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(j+1), &id_, &tag_, NULL, &data_) => 0; @@ -2142,7 +2142,7 @@ code = ''' "\xaa\xaa\xaa\xaa", 4))) => 0; } - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; for (unsigned j = 0; j < N; j++) { lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(j+1), &id_, &tag_, NULL, &data_) => 0; @@ -2214,7 +2214,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -2248,7 +2248,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -2305,7 +2305,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -2340,7 +2340,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -2410,7 +2410,7 @@ code = ''' lfs_bd_erase(&lfs, rbyd.block) => 0; lfsr_rbyd_commit(&lfs, &rbyd, attrs, N) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; // try traversing all tags tag_ = 0; id_ = -1; @@ -2480,7 +2480,7 @@ code = ''' "\xaa\xaa\xaa\xaa", 4))) => 0; } - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; // try traversing all tags tag_ = 0; id_ = -1; @@ -2576,7 +2576,7 @@ code = ''' } // check that all tags have been updated - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; for (unsigned j = 0; j < N; j++) { lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(j+1), &id_, &tag_, NULL, &data_) => 0; @@ -2661,7 +2661,7 @@ code = ''' // check that we can still lookup all the tags prng = 42; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; for (lfs_size_t i = 0; i < count; i++) { uint8_t x = (ORDER == 0) ? (uint8_t)i @@ -2710,7 +2710,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), @@ -2738,7 +2738,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(2)); @@ -2771,7 +2771,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -2863,8 +2863,7 @@ code = ''' LFSR_ATTR(-1, RMUATTR(j+1), 0, NULL, 0))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; for (unsigned k = 0; k < N; k++) { int err = lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(k+1), @@ -2893,8 +2892,7 @@ code = ''' "\xaa\xaa\xaa\xaa\xaa\xaa", 6))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; for (unsigned k = 0; k < N; k++) { lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(k+1), @@ -3012,8 +3010,7 @@ code = ''' LFSR_ATTR(-1, RMUATTR(j+1), 0, NULL, 0))) => 0; // try traversing over the tags - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; tag_ = 0; id_ = -1; @@ -3165,7 +3162,7 @@ code = ''' &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; // one last fetch to make sure nothing was broken - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(2)); @@ -3401,7 +3398,7 @@ code = ''' &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; // one last fetch to make sure nothing was broken - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(2)); @@ -3458,7 +3455,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), @@ -3479,7 +3476,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), @@ -3500,7 +3497,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(2), @@ -3586,7 +3583,7 @@ code = ''' } // check that all tags are now removed - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; for (unsigned j = 0; j < N; j++) { lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(j+1), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; @@ -3597,7 +3594,7 @@ code = ''' LFSR_ATTR(-1, UATTR(1), 0, "\xaa\xaa\xaa\xaa\xaa\xaa", 6))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(1), &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(1)); @@ -3805,7 +3802,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 1); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -3823,7 +3820,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xbb\xbb\xbb\xbb", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 2); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -3843,7 +3840,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xbb\xbb\xbb\xbb", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 2); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -3866,7 +3863,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -3891,7 +3888,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -3916,7 +3913,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -3954,7 +3951,7 @@ code = ''' => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 1); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; @@ -3974,7 +3971,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xbb\xbb\xbb\xbb", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 2); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -3995,7 +3992,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xbb\xbb\xbb\xbb", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 2); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -4020,7 +4017,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -4047,7 +4044,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -4074,7 +4071,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -4156,7 +4153,7 @@ code = ''' lfs_bd_erase(&lfs, rbyd.block) => 0; lfsr_rbyd_commit(&lfs, &rbyd, attrs, N) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N); for (unsigned j = 0; j < N; j++) { lfsr_rbyd_get(&lfs, &rbyd, j, LFSR_TAG_REG, buffer, 4) => 4; @@ -4255,7 +4252,7 @@ code = ''' LFSR_ATTR(id, MKREG, +1, names[perm[j] % 6], 4))) => 0; } - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N); for (unsigned j = 0; j < N; j++) { lfsr_rbyd_get(&lfs, &rbyd, @@ -4331,7 +4328,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -4373,7 +4370,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -4439,7 +4436,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -4482,7 +4479,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -4572,7 +4569,7 @@ code = ''' lfs_bd_erase(&lfs, rbyd.block) => 0; lfsr_rbyd_commit(&lfs, &rbyd, attrs, N) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N); // try traversing all tags tag_ = 0; @@ -4661,7 +4658,7 @@ code = ''' LFSR_ATTR(id, MKREG, +1, names[perm[j] % 6], 4))) => 0; } - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N); // try traversing all tags tag_ = 0; @@ -4742,7 +4739,7 @@ code = ''' lfsr_tag_t tag_; lfs_ssize_t id_; lfsr_data_t data_; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; for (uint16_t x = 0; x < rbyd.weight; x++) { lfsr_rbyd_lookupnext(&lfs, &rbyd, x, LFSR_TAG_REG, &id_, &tag_, NULL, &data_) => 0; @@ -4785,7 +4782,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xaa\xaa", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 1); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -4811,7 +4808,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xbb\xbb", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 2); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -4841,7 +4838,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xbb\xbb", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 2); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -4871,7 +4868,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -4894,7 +4891,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xcc\xcc", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -4934,7 +4931,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xcc\xcc", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -4974,7 +4971,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xcc\xcc", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -5021,7 +5018,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xaa\xaa", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 1); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -5050,7 +5047,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xbb\xbb", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 2); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -5083,7 +5080,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xbb\xbb", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 2); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -5118,7 +5115,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -5141,7 +5138,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xcc\xcc", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -5186,7 +5183,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xcc\xcc", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -5231,7 +5228,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_UATTR(1), buffer, 4) => 2; assert(memcmp(buffer, "\xcc\xcc", 2) == 0); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 3); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -5325,7 +5322,7 @@ code = ''' lfs_bd_erase(&lfs, rbyd.block) => 0; lfsr_rbyd_commit(&lfs, &rbyd, attrs, (1+M)*N) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N); for (unsigned j = 0; j < N; j++) { lfsr_rbyd_get(&lfs, &rbyd, j, LFSR_TAG_REG, buffer, 4) => 4; @@ -5437,7 +5434,7 @@ code = ''' } } - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N); for (unsigned j = 0; j < N; j++) { lfsr_rbyd_get(&lfs, &rbyd, j, LFSR_TAG_REG, buffer, 4) => 4; @@ -5534,7 +5531,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -5606,7 +5603,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -5704,7 +5701,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -5779,7 +5776,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, NULL, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -5889,7 +5886,7 @@ code = ''' lfs_bd_erase(&lfs, rbyd.block) => 0; lfsr_rbyd_commit(&lfs, &rbyd, attrs, (1+M)*N) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N); // try traversing all tags @@ -5997,7 +5994,7 @@ code = ''' } } - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N); // try traversing all tags @@ -6121,7 +6118,7 @@ code = ''' } // check that all tags have been updated - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; for (unsigned j = 0; j < N; j++) { lfsr_rbyd_get(&lfs, &rbyd, j, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, names[j % 6], 4) == 0); @@ -6260,8 +6257,7 @@ code = ''' lfsr_rbyd_commit(&lfs, &rbyd, LFSR_ATTRS( LFSR_ATTR(j/M, RMUATTR((j%M)+1), 0, NULL, 0))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; for (unsigned k = 0; k < N; k++) { lfsr_rbyd_get(&lfs, &rbyd, k, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, names[k % 6], 4) == 0); @@ -6301,8 +6297,7 @@ code = ''' lfsr_rbyd_commit(&lfs, &rbyd, LFSR_ATTRS( LFSR_ATTR(j/M, UATTR((j%M)+1), 0, names[(j/M)%6], 3))) => 0; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; for (unsigned k = 0; k < N; k++) { lfsr_rbyd_get(&lfs, &rbyd, k, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, names[k % 6], 4) == 0); @@ -6447,7 +6442,7 @@ code = ''' } // check that all tags have been removed - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; for (unsigned j = 0; j < N; j++) { lfsr_rbyd_get(&lfs, &rbyd, j, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, names[j % 6], 4) == 0); @@ -6554,7 +6549,7 @@ code = ''' lfsr_tag_t tag_; lfs_ssize_t id_; lfsr_data_t data_; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; for (uint16_t x = 0; x < rbyd.weight; x++) { lfsr_rbyd_lookupnext(&lfs, &rbyd, x, LFSR_TAG_REG, &id_, &tag_, NULL, &data_) => 0; @@ -6652,7 +6647,7 @@ code = ''' } // try looking up each tag - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N); for (unsigned j = 0; j < N; j++) { lfsr_rbyd_get(&lfs, &rbyd, @@ -6797,7 +6792,7 @@ code = ''' } // try looking up each tag - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N); for (unsigned j = 0; j < N; j++) { lfsr_rbyd_get(&lfs, &rbyd, @@ -6909,7 +6904,7 @@ code = ''' assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 1); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xaa\xaa\xaa\xaa", 4) == 0); @@ -6929,7 +6924,7 @@ code = ''' assert(memcmp(buffer, "\xbb\xbb\xbb\xbb", 4) == 0); lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 1); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; assert(memcmp(buffer, "\xbb\xbb\xbb\xbb", 4) == 0); @@ -7045,7 +7040,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_UATTR(1), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 1); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; @@ -7081,7 +7076,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 1, LFSR_TAG_UATTR(1), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 1); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; @@ -7124,7 +7119,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_UATTR(1), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 2); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; @@ -7174,7 +7169,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_UATTR(1), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 2); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; @@ -7224,7 +7219,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_UATTR(1), buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 2); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => 4; @@ -7339,8 +7334,7 @@ code = ''' LFSR_ATTR(j, MKUNR, -1, NULL, 0))) => 0; assert(rbyd.weight == N-1); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N-1); for (unsigned k = 0; k < N-1; k++) { lfsr_rbyd_get(&lfs, &rbyd, k, LFSR_TAG_REG, buffer, 4) => 4; @@ -7359,8 +7353,7 @@ code = ''' LFSR_ATTR(j, MKREG, +1, names[j % 6], 6))) => 0; assert(rbyd.weight == N); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N); for (unsigned k = 0; k < N; k++) { if (k == j) { @@ -7502,8 +7495,7 @@ code = ''' LFSR_ATTR(j, MKUNR, -1, NULL, 0))) => 0; assert(rbyd.weight == N-1); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N-1); for (unsigned k = 0; k < N-1; k++) { lfsr_rbyd_get(&lfs, &rbyd, k, LFSR_TAG_REG, buffer, 4) => 4; @@ -7539,8 +7531,7 @@ code = ''' } assert(rbyd.weight == N); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N); for (unsigned k = 0; k < N; k++) { if (k == j) { @@ -7689,8 +7680,7 @@ code = ''' assert(rbyd.weight == N-1); // try traversing over the tags - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N-1); tag_ = 0; @@ -7821,8 +7811,7 @@ code = ''' assert(rbyd.weight == N-1); // try traversing over the tags - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N-1); tag_ = 0; @@ -7897,7 +7886,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; @@ -7916,7 +7905,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; @@ -7935,7 +7924,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; @@ -7956,7 +7945,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; @@ -7977,7 +7966,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; @@ -8013,7 +8002,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; @@ -8034,7 +8023,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; @@ -8055,7 +8044,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; @@ -8079,7 +8068,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; @@ -8103,7 +8092,7 @@ code = ''' lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; @@ -8205,7 +8194,7 @@ code = ''' } // check that all tags are now removed - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, LFSR_TAG_REG, 0, buffer, 4) @@ -8216,7 +8205,7 @@ code = ''' LFSR_ATTR(0, MKREG, +1, "\xaa\xaa\xaa\xaa\xaa\xaa", 6))) => 0; assert(rbyd.weight == 1); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 1); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 6) @@ -8353,7 +8342,7 @@ code = ''' } // check that all tags are now removed - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 0); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 4) @@ -8368,7 +8357,7 @@ code = ''' } assert(rbyd.weight == 1); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == 1); lfsr_rbyd_get(&lfs, &rbyd, 0, LFSR_TAG_REG, buffer, 6) @@ -8589,7 +8578,7 @@ code = ''' assert(weight_ == 1); assert(lfsr_data_size(data_) == 4); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, 0, LFSR_TAG_REG, &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -8614,7 +8603,7 @@ code = ''' assert(weight_ == 2); assert(lfsr_data_size(data_) == 4); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, 0, LFSR_TAG_REG, &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -8651,7 +8640,7 @@ code = ''' assert(weight_ == 3); assert(lfsr_data_size(data_) == 4); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, 0, LFSR_TAG_REG, &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -8700,7 +8689,7 @@ code = ''' assert(weight_ == 4); assert(lfsr_data_size(data_) == 4); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, 0, LFSR_TAG_REG, &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -8761,7 +8750,7 @@ code = ''' assert(weight_ == 5); assert(lfsr_data_size(data_) == 4); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, 0, LFSR_TAG_REG, &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -8862,7 +8851,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_REG); @@ -8968,7 +8957,7 @@ code = ''' LFSR_ATTR(id*W, MKREG, +W, names[perm[j] % 6], 4))) => 0; } - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N*W); for (unsigned j = 0; j < N; j++) { lfsr_rbyd_lookupnext(&lfs, &rbyd, j*W+W-1, LFSR_TAG_REG, @@ -9055,7 +9044,7 @@ code = ''' LFSR_ATTR(id*W, MKREG, +W, names[perm[j] % 6], 4))) => 0; } - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N*W); // try traversing all tags tag_ = 0; @@ -9131,7 +9120,7 @@ code = ''' assert(weight_ == 0); assert(lfsr_data_size(data_) == 2); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(3)); @@ -9207,7 +9196,7 @@ code = ''' assert(weight_ == 0); assert(lfsr_data_size(data_) == 2); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(3)); @@ -9319,7 +9308,7 @@ code = ''' assert(weight_ == 0); assert(lfsr_data_size(data_) == 2); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(3)); @@ -9467,7 +9456,7 @@ code = ''' assert(weight_ == 0); assert(lfsr_data_size(data_) == 2); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(3)); @@ -9651,7 +9640,7 @@ code = ''' assert(weight_ == 0); assert(lfsr_data_size(data_) == 2); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(3)); @@ -9899,7 +9888,7 @@ code = ''' lfsr_rbyd_lookupnext(&lfs, &rbyd, id_, lfsr_tag_next(tag_), &id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT; - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, 0, &id_, &tag_, &weight_, &data_) => 0; assert(tag_ == LFSR_TAG_UATTR(3)); @@ -10078,7 +10067,7 @@ code = ''' names[perm[j] % 6], 2))) => 0; } - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N*W); lfsr_rbyd_lookupnext(&lfs, &rbyd, -1, LFSR_TAG_UATTR(3), &id_, &tag_, &weight_, &data_) => 0; @@ -10190,7 +10179,7 @@ code = ''' names[perm[j] % 6], 2))) => 0; } - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; assert(rbyd.weight == N*W); // try traversing all tags tag_ = 0; @@ -10327,8 +10316,7 @@ code = ''' LFSR_ATTR(j*W+W-1, UNR, +D, NULL, 0))) => 0; assert(rbyd.weight == N*W+D); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N*W+D); for (unsigned k = 0; k < N; k++) { if (k == j) { @@ -10455,8 +10443,7 @@ code = ''' LFSR_ATTR(j*W+W-1, REG, +D, names[j % 6], 6))) => 0; assert(rbyd.weight == N*W+D); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N*W+D); for (unsigned k = 0; k < N; k++) { if (k == j) { @@ -10592,8 +10579,7 @@ code = ''' LFSR_ATTR(j*W+W-1, UATTR(1), +D, names[j % 6], 6))) => 0; assert(rbyd.weight == N*W+D); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N*W+D); for (unsigned k = 0; k < N; k++) { if (k == j) { @@ -10740,8 +10726,7 @@ code = ''' LFSR_ATTR(j*W+W-1, UNR, -D, NULL, 0))) => 0; assert(rbyd.weight == N*W-D); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N*W-D); for (unsigned k = 0; k < N; k++) { if (k == j) { @@ -10868,8 +10853,7 @@ code = ''' LFSR_ATTR(j*W+W-1, REG, -D, names[j % 6], 6))) => 0; assert(rbyd.weight == N*W-D); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N*W-D); for (unsigned k = 0; k < N; k++) { if (k == j) { @@ -11005,8 +10989,7 @@ code = ''' LFSR_ATTR(j*W+W-1, UATTR(1), -D, names[j % 6], 6))) => 0; assert(rbyd.weight == N*W-D); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N*W-D); for (unsigned k = 0; k < N; k++) { if (k == j) { @@ -11152,8 +11135,7 @@ code = ''' LFSR_ATTR(j*W+W-1, MKUNR, -W, NULL, 0))) => 0; assert(rbyd.weight == (N-1)*W); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == (N-1)*W); for (unsigned k = 0; k < N-1; k++) { if (k >= j) { @@ -11185,8 +11167,7 @@ code = ''' LFSR_ATTR(j*W, MKREG, +W, names[j % 6], 6))) => 0; assert(rbyd.weight == N*W); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N*W); for (unsigned k = 0; k < N; k++) { if (k == j) { @@ -11309,8 +11290,7 @@ code = ''' LFSR_ATTR(j*W+W-1, UATTR(1), 0, names[j % 6], 2))) => 0; assert(rbyd.weight == N*W); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N*W); for (unsigned k = 0; k < N; k++) { lfsr_rbyd_lookupnext(&lfs, &rbyd, k*W+W-1, LFSR_TAG_REG, @@ -11340,8 +11320,7 @@ code = ''' LFSR_ATTR(j*W+W-1, RMUATTR(1), 0, NULL, 0))) => 0; assert(rbyd.weight == N*W); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N*W); for (unsigned k = 0; k < N; k++) { lfsr_rbyd_lookupnext(&lfs, &rbyd, k*W+W-1, LFSR_TAG_REG, @@ -11366,8 +11345,7 @@ code = ''' LFSR_ATTR(j*W+W-1, UATTR(1), 0, names[j % 6], 2))) => 0; assert(rbyd.weight == N*W); - lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, - cfg->block_size, NULL) => 0; + lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; assert(rbyd.weight == N*W); for (unsigned k = 0; k < N; k++) { lfsr_rbyd_lookupnext(&lfs, &rbyd, k*W+W-1, LFSR_TAG_REG,