[PATCH] [Object] Split the ELF interface into 3 parts.

Rafael EspĂ­ndola rafael.espindola at gmail.com
Tue Jun 25 09:28:08 PDT 2013


I really like the general idea.

One thing that would be nice is to make sure that the code that is
being changed uses the llvm naming convention:

s/symb/Symb/ (or Sym, which is probably more common)
s/index/Index/

We normally write acronyms in capitals, so ELFRelIter or
ELFRelocationIter would probably be better.

On the code itself

* Returning the section name when st_name is zero in getSymbolName
looks a bit too high level for this interface, no?
* Functions that never fail should not return an ErrorOr.
getSectionName for example.


On 24 June 2013 20:25, Michael Spencer <bigcheesegs at gmail.com> wrote:
> Hi rafael, silvas,
>
> * ELFTypes.h contains template magic for defining types based on endianess, size, and alignment.
> * ELFFile.h defines the ELFFile class which provides low level ELF specific access.
> * ELFObjectFile.h contains ELFObjectFile which uses ELFFile to implement the ObjectFile interface.
>
>
> http://llvm-reviews.chandlerc.com/D1033
>
> Files:
>   include/llvm/Object/ELF.h
>   include/llvm/Object/ELFObjectFile.h
>   include/llvm/Object/ELFTypes.h
>   include/llvm/Object/RelocVisitor.h
>   lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
>   lib/MC/MCObjectSymbolizer.cpp
>   lib/Object/ELFObjectFile.cpp
>   lib/Target/X86/MCTargetDesc/X86ELFRelocationInfo.cpp
>   tools/llvm-objdump/ELFDump.cpp
>   tools/llvm-readobj/ELFDumper.cpp
>   tools/yaml2obj/yaml2elf.cpp



More information about the llvm-commits mailing list