Dear all,
I have found in the source code few optimization regarding compraison and loop condition
To find them pls locate into the directory source code root
find -name "*.c" -exec grep -H '!=' {} \; | egrep '!=\s*0'
approximatively 551 lines should be modified
exemples
./cglib/cfg.c: if (neg[j] != 0)
./cglib/cfg.c: if (pos[j] != 0)
have to be replace by
./cglib/cfg.c: if (neg[j])
./cglib/cfg.c: if (pos[j])
and for the opposite
find -name "*.c" -exec egrep -H '==\s*0' {} \; | wc -l
approximatively 1173 lines should be modified
lines
./glpssx02.c: if (ssx->q == 0)
./glpssx02.c: if (ssx->p == 0)
becomes
./glpssx02.c: if (!ssx->q)
./glpssx02.c: if (!ssx->p)
If you look at the low level the processor has already load the value in the register and the status zero is already on or off
it is not necessary to compare the value with zero. you optimize the code and the number of cpu cycles @ low level
With kind regards
JJacques LOHEAC
mobile +33608870176