'too many sections' again when building ASTMatchers/Dynamic/Registry.cpp on Windows

Hi Samuel,

We've observed that in the past few days, debug-builds with Visual Studio
have started failing again because too many sections are generated for
ASTMatchers/Dynamic/Registry.cpp.

This has been observed and discussed before in this email thread:
http://lists.cs.uiuc.edu/pipermail/cfe-dev/2013-June/030102.html.

It seems that since then, bit by bit, the number of sections for
Registry.cpp
has been creeping up. I've done a quick experiment on linux to measure how
the size and the number of sections in Registry.cpp.o has been increasing
over
time. The table does show that your fix in r183768 did reduce the number of
sections a lot; but since then, the number of sections has been increasing
steadily and quite rapidly.

    Size of Register.cpp.o
svn id bytes sections
189448 27122264 28108
189353 27204656 28259
189031 26473624 27284
187500 26451288 26952
186000 21940824 23119
183769 19289872 20544
183768 33647984 35738

You did say on the previous email thread that you had a few more ideas on
how
to reduce the number of sections in Register.cpp.o. I'm wondering if you
would
be able to share the ideas you've got?
At the moment, it seems clang cannot be build with visual studio in debug
mode; and the large file size of Register.cpp.o and the large number of
sections seems to be slowing down the compile process on other platforms
too.

Thanks,

Kristof