[llvm-commits] [PATCH 0/5] ELF object support

Roman Divacky rdivacky at freebsd.org
Mon Jul 26 13:04:33 PDT 2010


and if you apply:

	http://lev.vlakno.cz/~rdivacky/clang-object-streamer.patch

you can use "clang -integrated-as" directly. this patch should/could be
committed regardless of the ELF patches as we got MachO and COFF.

thnx


On Mon, Jul 26, 2010 at 09:00:18PM +0100, Matt Fleming wrote:
> This series contains the patches that have been sitting in my github
> tree that me and Roman Divacky have been working on for a while now. It
> isn't a complete implementation but is enough to get a semi-complete
> relocatable ELF file emitted.
> 
> I've tried to split the patches in a sensible way; bits required by the
> ELF code but not ELF-specific come first, then the code ELF support,
> then a patch to wire it up for X86.
> 
> All comments and feedback welcome.
> 
> Matt Fleming (5):
>   Some ELF sections contain fixed-sized entries. Provide a way to
>     record the entry size of a section.
>   Record a symbol's size which is needed for ELF symbol tables.
>   Introduce a helper method to add a section to the end of a layout.
>     This will be used by the ELF ObjectWriter code to add the metadata
>     sections (symbol table, etc) to the end of an object file.
>   Add ELF ObjectWriter and Streamer support.
>   Hookup the ELF support for X86.
> 
>  include/llvm/MC/ELFObjectWriter.h   |   46 ++
>  include/llvm/MC/MCAssembler.h       |   32 ++
>  include/llvm/MC/MCStreamer.h        |    6 +
>  include/llvm/Support/ELF.h          |   14 +
>  lib/MC/CMakeLists.txt               |    2 +
>  lib/MC/ELFObjectWriter.cpp          |  873 +++++++++++++++++++++++++++++++++++
>  lib/MC/MCAssembler.cpp              |   38 ++-
>  lib/MC/MCELFStreamer.cpp            |  496 ++++++++++++++++++++
>  lib/Target/X86/X86AsmBackend.cpp    |   17 +-
>  lib/Target/X86/X86TargetMachine.cpp |    2 +
>  10 files changed, 1521 insertions(+), 5 deletions(-)
>  create mode 100644 include/llvm/MC/ELFObjectWriter.h
>  create mode 100644 lib/MC/ELFObjectWriter.cpp
>  create mode 100644 lib/MC/MCELFStreamer.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20100726/7266379a/attachment.sig>


More information about the llvm-commits mailing list