llvm-6502/lib
Rafael Espindola 6cc1119408 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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@227431 91177308-0d34-0410-b5e6-96231b3b80d8
2015-01-29 12:43:28 +00:00
..
Analysis Fold fcmp in cases where value is provably non-negative. By Arch Robison. 2015-01-28 08:03:58 +00:00
AsmParser AsmParser: PARSE_MD_FIELD() => ParseMDField(), NFC 2015-01-20 02:42:29 +00:00
Bitcode [Bitcode] Diagnose errors instead of asserting from bad input 2015-01-24 04:15:05 +00:00
CodeGen Don't create multiple mergeable sections with -fdata-sections. 2015-01-29 12:43:28 +00:00
DebugInfo
ExecutionEngine Revert r227247 and r227228: "Add weak symbol support to RuntimeDyld". 2015-01-28 01:30:37 +00:00
Fuzzer [fuzzer] add option -save_minimized_corpus 2015-01-28 23:48:39 +00:00
IR Fix LLVMSetMetadata and LLVMAddNamedMetadataOperand for single value MDNodes 2015-01-28 16:35:59 +00:00
IRReader
LineEditor
Linker [llvm link] Destroy ConstantArrays in LLVMContext if they are not used. 2015-01-20 19:24:59 +00:00
LTO Move DataLayout back to the TargetMachine from TargetSubtargetInfo 2015-01-26 19:03:15 +00:00
MC Store the passed in CPU name string so that it can be accessed later. 2015-01-26 17:33:30 +00:00
Object [ELFYAML] Provide default value 0 for YAML relocation addendum field 2015-01-29 06:56:24 +00:00
Option
ProfileData llvm-cov: Only combine segments if they overlap exactly 2015-01-24 20:58:52 +00:00
Support CommandLineParser: Avoid non-static member nitializer(s). 2015-01-29 11:06:59 +00:00
TableGen
Target [Mips][Disassembler] When disassembler meets cache/pref instructions for r6 it crashes as the access to operands array is out of range. This patch adds dedicated decoder method for R6 CACHE_HINT_DESC class that properly handles decoding of these instructions. 2015-01-29 11:33:41 +00:00
Transforms Teach SplitBlockPredecessors how to handle landingpad blocks. 2015-01-28 23:06:47 +00:00
CMakeLists.txt Add a Fuzzer library 2015-01-27 22:08:41 +00:00
LLVMBuild.txt
Makefile