aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineFunction.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-01-29 12:43:28 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-01-29 12:43:28 +0000
commitfad390109502f97f25828a993fd3bc2500fa93f5 (patch)
tree736f0724f76704d6c333f66b59e668233c92eae1 /llvm/lib/CodeGen/MachineFunction.cpp
parentdf464ae2248fba821eebda750f3f412f443c36b7 (diff)
downloadllvm-fad390109502f97f25828a993fd3bc2500fa93f5.zip
llvm-fad390109502f97f25828a993fd3bc2500fa93f5.tar.gz
llvm-fad390109502f97f25828a993fd3bc2500fa93f5.tar.bz2
Don't create multiple mergeable sections with -fdata-sections.
ELF has support for sections that can be split into fixed size or null terminated entities. Since these sections can be split by the linker, it is not necessary to split them in codegen. This reduces the combined .o size in a llvm+clang build from 202,394,570 to 173,819,098 bytes. The time for linking clang with gold (on a VM, on a laptop) goes from 2.250089985 to 1.383001792 seconds. The flip side is the size of rodata in clang goes from 10,926,785 to 10,929,345 bytes. The increase seems to be because of http://sourceware.org/bugzilla/show_bug.cgi?id=17902. llvm-svn: 227431
Diffstat (limited to 'llvm/lib/CodeGen/MachineFunction.cpp')
0 files changed, 0 insertions, 0 deletions