Simplified lfsr_mtree_t now that we don't need to represent msprouts
We had to be a bit clever with our lfsr_mtree_t representation to
support msprouts. Now that we don't support msprouts, we can simplify
this and drop the lfsr_mtree_t type completely! which is nice for both
code cost and readability.
Saves a bit more code:
code stack ctx
before: 38344 2624 640
after: 38284 (-0.2%) 2624 (+0.0%) 640 (+0.0%)
Which increases the total savings of dropping msprouts:
code stack ctx
yes msprouts: 38508 2624 640
no msprouts: 38284 (-0.6%) 2624 (+0.0%) 640 (+0.0%)
This commit is contained in:
+42
-42
@@ -3400,7 +3400,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "uloborus%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -3519,7 +3519,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "uloborus%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -3646,7 +3646,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "uloborus%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4170,7 +4170,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split twice
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "tarantula%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4180,8 +4180,8 @@ code = '''
|
||||
}
|
||||
|
||||
i = 0;
|
||||
lfs_size_t orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
lfs_size_t orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "xnotata%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4205,8 +4205,8 @@ code = '''
|
||||
|
||||
// create enough files for mdir to split again
|
||||
i = 0;
|
||||
orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "vulsor%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4345,7 +4345,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split twice
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "tarantula%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4355,8 +4355,8 @@ code = '''
|
||||
}
|
||||
|
||||
i = 0;
|
||||
lfs_size_t orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
lfs_size_t orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "xnotata%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4404,8 +4404,8 @@ code = '''
|
||||
|
||||
// create enough files for mdir to split again
|
||||
i = 0;
|
||||
orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "vulsor%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4527,7 +4527,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split twice
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "tarantula%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4537,8 +4537,8 @@ code = '''
|
||||
}
|
||||
|
||||
i = 0;
|
||||
lfs_size_t orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
lfs_size_t orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "xnotata%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4591,8 +4591,8 @@ code = '''
|
||||
|
||||
// create enough files for mdir to split again
|
||||
i = 0;
|
||||
orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "vulsor%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4703,7 +4703,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split twice
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "tarantula%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4713,8 +4713,8 @@ code = '''
|
||||
}
|
||||
|
||||
i = 0;
|
||||
lfs_size_t orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
lfs_size_t orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "xnotata%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4876,7 +4876,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split twice
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "tarantula%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -4886,8 +4886,8 @@ code = '''
|
||||
}
|
||||
|
||||
i = 0;
|
||||
lfs_size_t orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
lfs_size_t orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "xnotata%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -5067,7 +5067,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split twice
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "tarantula%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -5077,8 +5077,8 @@ code = '''
|
||||
}
|
||||
|
||||
i = 0;
|
||||
lfs_size_t orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
lfs_size_t orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "xnotata%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -5246,7 +5246,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split twice
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "tarantula%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -5256,8 +5256,8 @@ code = '''
|
||||
}
|
||||
|
||||
i = 0;
|
||||
lfs_size_t orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
lfs_size_t orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "xnotata%03x", i);
|
||||
lfsr_file_open(&lfs, &file, name,
|
||||
@@ -5946,7 +5946,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split twice
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "hydroid%03x", i);
|
||||
lfsr_file_t file;
|
||||
@@ -5957,8 +5957,8 @@ code = '''
|
||||
}
|
||||
|
||||
i = 0;
|
||||
lfs_size_t orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
lfs_size_t orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "medusa%03x", i);
|
||||
lfsr_file_t file;
|
||||
@@ -6180,7 +6180,7 @@ code = '''
|
||||
|
||||
// create enough files for mroot to split twice
|
||||
lfs_size_t i = 0;
|
||||
while (lfs.mtree.u.weight == 0x80000000) {
|
||||
while (lfs.mtree.weight == 0) {
|
||||
char name[256];
|
||||
sprintf(name, "hydroid%03x", i);
|
||||
lfsr_file_t file;
|
||||
@@ -6191,8 +6191,8 @@ code = '''
|
||||
}
|
||||
|
||||
i = 0;
|
||||
lfs_size_t orig = lfs.mtree.u.weight;
|
||||
while (lfs.mtree.u.weight == orig) {
|
||||
lfs_size_t orig = lfs.mtree.weight;
|
||||
while (lfs.mtree.weight == orig) {
|
||||
char name[256];
|
||||
sprintf(name, "polyp%03x", i);
|
||||
lfsr_file_t file;
|
||||
@@ -6461,7 +6461,7 @@ code = '''
|
||||
assert(!(lfs.flags & LFS_I_MKCONSISTENT));
|
||||
|
||||
// which means there shouldn't be that many files left
|
||||
assert((lfs.mtree.u.weight & 0x7fffffff) <= (2 << lfs.mdir_bits));
|
||||
assert(lfs.mtree.weight <= (2 << lfs.mdir_bits));
|
||||
assert(file1.o.o.mdir.rbyd.weight <= 3);
|
||||
assert(file2.o.o.mdir.rbyd.weight <= 3);
|
||||
|
||||
@@ -6762,7 +6762,7 @@ code = '''
|
||||
assert(!(lfs.flags & LFS_I_MKCONSISTENT));
|
||||
|
||||
// which means there shouldn't be that many files left
|
||||
assert((lfs.mtree.u.weight & 0x7fffffff) <= (2 << lfs.mdir_bits));
|
||||
assert(lfs.mtree.weight <= (2 << lfs.mdir_bits));
|
||||
assert(file1.o.o.mdir.rbyd.weight <= 3);
|
||||
assert(file2.o.o.mdir.rbyd.weight <= 3);
|
||||
|
||||
@@ -6920,7 +6920,7 @@ code = '''
|
||||
assert(!(lfs.flags & LFS_I_MKCONSISTENT));
|
||||
|
||||
// which means there shouldn't be that many files left
|
||||
assert((lfs.mtree.u.weight & 0x7fffffff) <= (2 << lfs.mdir_bits));
|
||||
assert(lfs.mtree.weight <= (2 << lfs.mdir_bits));
|
||||
assert(file1.o.o.mdir.rbyd.weight <= 3);
|
||||
assert(file2.o.o.mdir.rbyd.weight <= 3);
|
||||
|
||||
@@ -7089,7 +7089,7 @@ code = '''
|
||||
assert(!(lfs.flags & LFS_I_MKCONSISTENT));
|
||||
|
||||
// which means there shouldn't be that many files left
|
||||
assert((lfs.mtree.u.weight & 0x7fffffff) <= (2 << lfs.mdir_bits));
|
||||
assert(lfs.mtree.weight <= (2 << lfs.mdir_bits));
|
||||
assert(file1.o.o.mdir.rbyd.weight <= 3);
|
||||
assert(file2.o.o.mdir.rbyd.weight <= 3);
|
||||
|
||||
@@ -7256,7 +7256,7 @@ code = '''
|
||||
assert(!(lfs.flags & LFS_I_MKCONSISTENT));
|
||||
|
||||
// which means there shouldn't be that many files left
|
||||
assert((lfs.mtree.u.weight & 0x7fffffff) <= (2 << lfs.mdir_bits));
|
||||
assert(lfs.mtree.weight <= (2 << lfs.mdir_bits));
|
||||
assert(file1.o.o.mdir.rbyd.weight <= 3);
|
||||
assert(file2.o.o.mdir.rbyd.weight <= 3);
|
||||
|
||||
@@ -7421,7 +7421,7 @@ code = '''
|
||||
assert(!(lfs.flags & LFS_I_MKCONSISTENT));
|
||||
|
||||
// which means there shouldn't be that many files left
|
||||
assert((lfs.mtree.u.weight & 0x7fffffff) <= (2 << lfs.mdir_bits));
|
||||
assert(lfs.mtree.weight <= (2 << lfs.mdir_bits));
|
||||
assert(file1.o.o.mdir.rbyd.weight <= 3);
|
||||
assert(file2.o.o.mdir.rbyd.weight <= 3);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user