Write sections mostly in one pass.
authorRafael Espindola <rafael.espindola@gmail.com>
Thu, 30 Apr 2015 14:21:49 +0000 (14:21 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Thu, 30 Apr 2015 14:21:49 +0000 (14:21 +0000)
commit76e71bd66ef3d0ca040d3b13bda828e5b249e80b
tree0afcd2733900c55aeb1dc3d3c3e6fb8e5d751882
parent8c54c84ae71ce6e7783da011cc16535ffd3b7410
Write sections mostly in one pass.

During ELF writing, there is no need to further relax the sections, so we
should not be creating fragments. This patch avoids doing so in all cases
but debug section compression (that is next).

Also, the ELF format is fairly simple to write. We can do a single pass over
the sections to write them out and compute the section header table.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236235 91177308-0d34-0410-b5e6-96231b3b80d8
lib/MC/ELFObjectWriter.cpp
test/MC/ARM/eh-directive-section-comdat.s
test/MC/ARM/eh-directive-section.s
test/MC/ARM/eh-link.s
test/MC/ELF/comdat-dup-group-name.s
test/MC/ELF/comdat-reloc.s
test/MC/ELF/comdat.s
test/MC/ELF/section-sym.s