llvm-mirror/lib/Linker
Manman Ren 4ae48fda6a [llvm link] Destroy ConstantArrays in LLVMContext if they are not used.
ConstantArrays constructed during linking can cause quadratic memory
explosion. An example is the ConstantArrays constructed when linking in
GlobalVariables with appending linkage.

Releasing all unused constants can cause a 20% LTO compile-time
slowdown for a large application. So this commit releases unused ConstantArrays
only.

rdar://19040716. It reduces memory footprint from 20+G to 6+G.

llvm-svn: 226592
2015-01-20 19:24:59 +00:00
..
CMakeLists.txt Now that Linker.cpp is almost empty, merge it into LinkModules.cpp. 2013-05-04 03:48:37 +00:00
LinkModules.cpp [llvm link] Destroy ConstantArrays in LLVMContext if they are not used. 2015-01-20 19:24:59 +00:00
LLVMBuild.txt [Linker] Kill Linker::LoadObject which is dead, and drop the BitReader dependency again. 2013-01-18 19:37:11 +00:00
Makefile make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00