[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[creduce-dev] unifdef
I just merged the new pass that does partial resolution of ifdefs.
For the 196 transitive include files that come from a C++ hello world on
OS X (not making this up) the unifdef pass by itself gives a 57%
reduction (in 352 seconds) if we choose -D first and -U second for each
CPP symbol. Reduction is only 45% for -U first (in 518 seconds). I
have no idea if this generalizes but I'm going with -D first for now.
Also I'm putting the unifdef and comment removal passes right up at the
front of the phase ordering on the idea that they work well for
non-preprocessed code and terminate very quickly if there aren't any
ifdefs / comments to remove. We can revisit this if my idea isn't right.
John