[PATCH] Refactor VariantMatcher::MatcherOps to reduce the amount of generated code.
Samuel Benzaquen
sbenza at google.com
Tue Sep 2 08:34:48 PDT 2014
I did try splitting it up. It doesn't scale much.
Each part contains duplicate template instantiations, so splitting in N pieces will not make each one 1/Nth of the total.
Tried 1-5 pieces. These are the results:
# parts | # symbols | total #
| per part | symbols
1 | ~19k | ~19k
2 | ~13k | ~26k
3 | ~10k | ~30k
4 | ~9k | ~36k
5 | ~8k | ~40k
Note that I did not try to group similar matchers together (which would be a maintenance nightmare), so each part ends up instantiating most of the common templates for a lot (most?) of the node types.
http://reviews.llvm.org/D5124
More information about the cfe-commits
mailing list