[PATCH] D26425: Split Header into individual fields

Rafael Ávila de Espíndola via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 8 14:44:16 PST 2016


rafael created this revision.
rafael added a reviewer: ruiu.
rafael added a subscriber: llvm-commits.

This is similar to what was done for InputSection.

With this the various fields are stored in host order and only converted to target order when writing.

My objective is to

- Make OutputSectionBase a class instead of a class template.
- Make InputSectionBase a class
- Merge InputSectionBase and InputSectionData

Specialize the storage, for example, we probably don't need 64 bits for Entsize.  This will mean that 32 bit ELFs will be a bit bloated as uintX_t will be replaced with uint64_t, but I don't expect that to be a major problem.

In any case, I think this is already an independent cleanup.


https://reviews.llvm.org/D26425

Files:
  ELF/InputSection.cpp
  ELF/LinkerScript.cpp
  ELF/OutputSections.cpp
  ELF/OutputSections.h
  ELF/Relocations.cpp
  ELF/Symbols.cpp
  ELF/SyntheticSections.cpp
  ELF/Target.cpp
  ELF/Thunks.cpp
  ELF/Writer.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D26425.77266.patch
Type: text/x-patch
Size: 55686 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161108/32ca9a52/attachment.bin>


More information about the llvm-commits mailing list