As you mention, app.signers and app.verifiers ought to be
combined with the key_store - but probably so should app.agent; I
haven't looked at the code in enough detail to be sure, but I think
Justin just made it a separate object because that was the path of
least resistance, not because it actually *needs* to be separate - and
logically, it is part of the key store.
Furthermore, if you look at the specific options and hooks that are
being used, I'd argue that they ought to be properties of the
key_store too. With the exception of the get_passphrase hook (which
we are killing, aren't we?) they are constant across the application
run.
How do you count that stuff? Is there a script? Or a makefile target or
something?
Build before and after (in two separate directories) with "make
CXXFLAGS='-g -O2 -save-temps'", and then
$ (cd before && wc -l *.ii) > A
$ (cd before && wc -l *.s) > As
$ (cd after && wc -l *.ii) > B
$ (cd after && wc -l *.s) > Bs
$ paste A B As Bs | awk 'BEGIN{ OFS="\t"; print "file", ".ii", ".s" }
{ if ($3 - $1 != 0 || $7 - $5 != 0) { sub(/\.ii/, "", $2); print $2,
$3 - $1, $7 - $5 } }'
(I really wish coreutils' join(1) utility were more powerful, but this
works.)