Refactor VariantMatcher::MatcherOps to reduce the amount of generated code.
Summary: Refactor VariantMatcher::MatcherOps to reduce the amount of generated code. - Make some code type agnostic and move it to the cpp file. - Return a DynTypedMatcher instead of storing the object in MatcherOps. This change reduces the number of symbols generated in Registry.cpp by ~19%, the object byte size by ~17% and the compilation time (in non-release mode) by ~20%. Reviewers: klimek Subscribers: klimek, cfe-commits Differential Revision: http://reviews.llvm.org/D5124 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@217152 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- include/clang/ASTMatchers/ASTMatchersInternal.h 40 additions, 11 deletionsinclude/clang/ASTMatchers/ASTMatchersInternal.h
- include/clang/ASTMatchers/Dynamic/VariantValue.h 38 additions, 53 deletionsinclude/clang/ASTMatchers/Dynamic/VariantValue.h
- lib/ASTMatchers/ASTMatchersInternal.cpp 11 additions, 0 deletionslib/ASTMatchers/ASTMatchersInternal.cpp
- lib/ASTMatchers/Dynamic/VariantValue.cpp 37 additions, 7 deletionslib/ASTMatchers/Dynamic/VariantValue.cpp
Loading
Please register or sign in to comment