[PATCH] [mach-o] Reader first steps, yaml support

kledzik at apple.com kledzik at apple.com
Fri Aug 2 14:08:44 PDT 2013


Hi Bigcheese, ruiu, shankarke,

This is the first step in how I plan to get mach-o object files support into 
lld.   We need to be able to test the mach-o Reader on systems without a 
mach-o compiler or assembler.  Therefore, we want to support a textual way
(YAML) to create mach-o object files.  

MNObjectFile.h defines an in-memory abstraction of the content of mach-o object 
files.  The in-memory data structures are always native endianess and always
use 64-bit sizes.  That internal data structure can then be converted to or
from three different formats: 1) yaml (text) encoded mach-o, 2) binary mach-o
object files, 3) lld Atoms.  

This patch defines the internal model and uses YAML I/O to implement the 
conversion to and from the model to yaml.  Future patches will do the other
two conversion operations.  

This patch includes unit tests to procedurally test the yaml conversion
operations.

http://llvm-reviews.chandlerc.com/D1276

Files:
  include/lld/ReaderWriter/MachOTargetInfo.h
  unittests/MachOTests
  unittests/MachOTests/ObjectFileYAML.cpp
  unittests/MachOTests/CMakeLists.txt
  unittests/CMakeLists.txt
  lib/ReaderWriter/MachO/WriterMachO.cpp
  lib/ReaderWriter/MachO/MNObjectFileYAML.cpp
  lib/ReaderWriter/MachO/MachOFormat.hpp
  lib/ReaderWriter/MachO/MNObjectFile.h
  lib/ReaderWriter/MachO/CMakeLists.txt
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D1276.1.patch
Type: text/x-patch
Size: 55436 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130802/eebff9ae/attachment.bin>


More information about the llvm-commits mailing list