rattrs: Reverted implicit lfs3_path_namelen in LFS3_FROM_NAME
I don't think there was anything inherently wrong with this idea, but:
- The code savings (28 bytes) was surprisingly small.
- Expecting lfs3_path_namelen may be a headache for future
non-null-terminated string support.
- Even if you don't care about non-null-terminated strings, precomputing
strlen as early as possible is a good idea to minimize repeated strlen
scans.
Reverting adds a bit of code:
code stack ctx
before: 35288 2176 660
after: 35316 (+0.1%) 2176 (+0.0%) 660 (+0.0%)
code stack ctx
gbmap before: 38140 2192 772
gbmap after: 38168 (+0.1%) 2192 (+0.0%) 772 (+0.0%)
This commit is contained in:
+62
-39
@@ -3214,9 +3214,10 @@ code = '''
|
||||
lfs3_btree_t btree;
|
||||
lfs3_btree_init(&btree);
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG("aaa"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("0"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -3275,18 +3276,20 @@ code = '''
|
||||
lfs3_btree_t btree;
|
||||
lfs3_btree_init(&btree);
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG("aaa"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("0"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("0"),
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG("aab"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("1"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -3356,27 +3359,30 @@ code = '''
|
||||
lfs3_btree_t btree;
|
||||
lfs3_btree_init(&btree);
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG("aaa"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("0"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("0"),
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(1*DID),
|
||||
LFS3_RATTR_ARG("aab"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("1"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
lfs3_btree_commit(&lfs3, &btree, 1, LFS3_RATTRS(
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("1"),
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(2*DID),
|
||||
LFS3_RATTR_ARG("aac"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("2"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -3457,27 +3463,30 @@ code = '''
|
||||
lfs3_btree_t btree;
|
||||
lfs3_btree_init(&btree);
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG("aaa"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("0"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("1"),
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(2*DID),
|
||||
LFS3_RATTR_ARG("aac"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("2"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("0"),
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(1*DID),
|
||||
LFS3_RATTR_ARG("aab"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("1"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -3558,27 +3567,29 @@ code = '''
|
||||
// create a tree with N elements
|
||||
lfs3_btree_t btree;
|
||||
lfs3_btree_init(&btree);
|
||||
char name[4] = {
|
||||
'a'+((0/26/26) % 26), 'a'+((0/26) % 26), 'a'+(0 % 26), '\0',
|
||||
char name[3] = {
|
||||
'a'+((0/26/26) % 26), 'a'+((0/26) % 26), 'a'+(0 % 26)
|
||||
};
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG(name),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+(0 % 10)}),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
lfs3_size_t n = 1;
|
||||
for (lfs3_size_t i = 1; i < N; i++) {
|
||||
char name[4] = {
|
||||
'a'+((i/26/26) % 26), 'a'+((i/26) % 26), 'a'+(i % 26), '\0',
|
||||
char name[3] = {
|
||||
'a'+((i/26/26) % 26), 'a'+((i/26) % 26), 'a'+(i % 26)
|
||||
};
|
||||
lfs3_btree_commit(&lfs3, &btree, i-1, LFS3_RATTRS(
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+((i-1) % 10)}),
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(i*DID),
|
||||
LFS3_RATTR_ARG(name),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+((i-0) % 10)}),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -3635,9 +3646,10 @@ code = '''
|
||||
lfs3_btree_t btree;
|
||||
lfs3_btree_init(&btree);
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG("___"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("_"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -3658,8 +3670,8 @@ code = '''
|
||||
for (lfs3_size_t i = 1; i < N; i++) {
|
||||
// choose a pseudo-random name
|
||||
lfs3_size_t x = TEST_PRNG(&prng) % (26*26*26);
|
||||
char name[4] = {
|
||||
'a'+((x/26/26) % 26), 'a'+((x/26) % 26), 'a'+(x % 26), '\0',
|
||||
char name[3] = {
|
||||
'a'+((x/26/26) % 26), 'a'+((x/26) % 26), 'a'+(x % 26)
|
||||
};
|
||||
|
||||
// find where to split
|
||||
@@ -3676,9 +3688,10 @@ code = '''
|
||||
lfs3_btree_commit(&lfs3, &btree, bid, LFS3_RATTRS(
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+(i % 10)}),
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG(name),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+(i % 10)}),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -3753,29 +3766,31 @@ code = '''
|
||||
// create a tree with N elements
|
||||
lfs3_btree_t btree;
|
||||
lfs3_btree_init(&btree);
|
||||
char name[4] = {
|
||||
'a'+((0/26/26) % 26), 'a'+((0/26) % 26), 'a'+(0 % 26), '\0',
|
||||
char name[3] = {
|
||||
'a'+((0/26/26) % 26), 'a'+((0/26) % 26), 'a'+(0 % 26)
|
||||
};
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(5, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_WEIGHT(+W),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG(name),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+(0 % 10)}),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
lfs3_size_t n = 1;
|
||||
for (lfs3_size_t i = 1; i < N; i++) {
|
||||
char name[4] = {
|
||||
'a'+((i/26/26) % 26), 'a'+((i/26) % 26), 'a'+(i % 26), '\0',
|
||||
char name[3] = {
|
||||
'a'+((i/26/26) % 26), 'a'+((i/26) % 26), 'a'+(i % 26)
|
||||
};
|
||||
lfs3_btree_commit(&lfs3, &btree, (i-1)*W+W-1, LFS3_RATTRS(
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+((i-1) % 10)}),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(5, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_WEIGHT(+W),
|
||||
LFS3_RATTR_ARG(i*DID),
|
||||
LFS3_RATTR_ARG(name),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+((i-0) % 10)}),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -3833,10 +3848,11 @@ code = '''
|
||||
lfs3_btree_t btree;
|
||||
lfs3_btree_init(&btree);
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(5, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_WEIGHT(+W),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG("___"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("_"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -3860,8 +3876,8 @@ code = '''
|
||||
for (lfs3_size_t i = 1; i < N; i++) {
|
||||
// choose a pseudo-random name
|
||||
lfs3_size_t x = TEST_PRNG(&prng) % (26*26*26);
|
||||
char name[4] = {
|
||||
'a'+((x/26/26) % 26), 'a'+((x/26) % 26), 'a'+(x % 26), '\0',
|
||||
char name[3] = {
|
||||
'a'+((x/26/26) % 26), 'a'+((x/26) % 26), 'a'+(x % 26)
|
||||
};
|
||||
// choose pseudo-random weights
|
||||
lfs3_size_t weight1 = 1 + (TEST_PRNG(&prng) % W);
|
||||
@@ -3890,10 +3906,11 @@ code = '''
|
||||
LFS3_RATTR_WEIGHT(+weight1-sim_weights[bid]),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+(i % 10)}),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(5, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_WEIGHT(+weight2),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG(name),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+(i % 10)}),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -3995,9 +4012,10 @@ code = '''
|
||||
lfs3_btree_t btree;
|
||||
lfs3_btree_init(&btree);
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG("___"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("_"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -4022,8 +4040,8 @@ code = '''
|
||||
lfs3_size_t bid = TEST_PRNG(&prng) % ((sim_size == 0) ? 1 : sim_size);
|
||||
// choose a pseudo-random name
|
||||
lfs3_size_t x = TEST_PRNG(&prng) % (26*26*26);
|
||||
char name[4] = {
|
||||
'a'+((x/26/26) % 26), 'a'+((x/26) % 26), 'a'+(x % 26), '\0',
|
||||
char name[3] = {
|
||||
'a'+((x/26/26) % 26), 'a'+((x/26) % 26), 'a'+(x % 26)
|
||||
};
|
||||
|
||||
// don't let sim drop below one element
|
||||
@@ -4069,9 +4087,10 @@ code = '''
|
||||
assert(cmp != LFS3_CMP_EQ);
|
||||
if (cmp > LFS3_CMP_EQ) {
|
||||
lfs3_btree_commit(&lfs3, &btree, split_bid, LFS3_RATTRS(
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG(name),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+(i % 10)}),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -4079,9 +4098,10 @@ code = '''
|
||||
lfs3_btree_commit(&lfs3, &btree, split_bid, LFS3_RATTRS(
|
||||
// yes, we need this noop, see above
|
||||
LFS3_RATTR(1, LFS3_RATTR_NULL, 0),
|
||||
LFS3_RATTR(3, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, +1, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG(name),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+(i % 10)}),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -4179,10 +4199,11 @@ code = '''
|
||||
lfs3_btree_t btree;
|
||||
lfs3_btree_init(&btree);
|
||||
lfs3_btree_commit(&lfs3, &btree, 0, LFS3_RATTRS(
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(5, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_WEIGHT(+W),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG("___"),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG("_"),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -4210,8 +4231,8 @@ code = '''
|
||||
lfs3_size_t bid = TEST_PRNG(&prng) % ((sim_size == 0) ? 1 : sim_size);
|
||||
// choose a pseudo-random name
|
||||
lfs3_size_t x = TEST_PRNG(&prng) % (26*26*26);
|
||||
char name[4] = {
|
||||
'a'+((x/26/26) % 26), 'a'+((x/26) % 26), 'a'+(x % 26), '\0',
|
||||
char name[3] = {
|
||||
'a'+((x/26/26) % 26), 'a'+((x/26) % 26), 'a'+(x % 26)
|
||||
};
|
||||
// choose a pseudo-random weight
|
||||
lfs3_size_t weight = 1 + (TEST_PRNG(&prng) % W);
|
||||
@@ -4268,10 +4289,11 @@ code = '''
|
||||
if (cmp > LFS3_CMP_EQ) {
|
||||
lfs3_btree_commit(&lfs3, &btree,
|
||||
split_bid-(split_weight-1), LFS3_RATTRS(
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(5, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_WEIGHT(+weight),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG(name),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+(i % 10)}),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
@@ -4279,10 +4301,11 @@ code = '''
|
||||
lfs3_btree_commit(&lfs3, &btree, split_bid, LFS3_RATTRS(
|
||||
// yes, we need this noop, see above
|
||||
LFS3_RATTR(1, LFS3_RATTR_NULL, 0),
|
||||
LFS3_RATTR(4, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR(5, LFS3_TAG_REG, -2, LFS3_FROM_NAME),
|
||||
LFS3_RATTR_WEIGHT(+weight),
|
||||
LFS3_RATTR_ARG(0),
|
||||
LFS3_RATTR_ARG(name),
|
||||
LFS3_RATTR_ARG(3),
|
||||
LFS3_RATTR(2, LFS3_TAG_DATA, 0, LFS3_FROM_BUF, 1),
|
||||
LFS3_RATTR_ARG(&(uint8_t){'0'+(i % 10)}),
|
||||
LFS3_RATTR_NULL)) => 0;
|
||||
|
||||
Reference in New Issue
Block a user