[cfe-dev] 'too many sections' when building an object file for llvm/clang

Manish Verma manish.verma at arm.com
Fri Jun 7 11:22:01 PDT 2013


Hi,

I have been discussing the same issue on llvm-commit mailing-list.
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130603/177054.
html

At the moment, the debug build of LLVM/Clang is broken on Windows.
This is because when compiling ASTMatchers/Dynamic/Registry.cpp, 
the compilers hit the allowed limit of 2^16 sections in the
COFF file.

For MSVC it is possible to work around this problem by compiling
with /bigobj command line option. However, I don't know of an
equivalent command line option for Min-GW gcc.

On Linux, Registry.o (debug-mode) is about 34M in size and has 
36986 sections. I can expect it impacting the link-time and memory
usage.

The last commit has resulted in the build failure, but I don't think 
it is responsible for the failure.

I don't know what should be the correct solution. Hence, I am raising 
it here for discussion.

Regards,
Manish








More information about the cfe-dev mailing list