<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">LGTM. Had only few minor comments that
I have made in the review page.<br>
<br>
On 10/4/2013 7:18 PM, Nick Kledzik wrote:<br>
</div>
<blockquote
cite="mid:8750161F-88C0-4E53-A150-07FA4AFDE1DF@apple.com"
type="cite">
<pre wrap="">Just realized this did not get CC’d to llvm-commits
-Nick
Begin forwarded message:
</pre>
<blockquote type="cite">
<pre wrap="">From: <a class="moz-txt-link-rfc2396E" href="mailto:kledzik@apple.com">"kledzik@apple.com"</a> <a class="moz-txt-link-rfc2396E" href="mailto:kledzik@apple.com"><kledzik@apple.com></a>
Subject: [PATCH] [PATCH][lld][mach-o] normalized mach-o yaml
Date: October 3, 2013 at 6:39:34 PM PDT
To: <a class="moz-txt-link-abbreviated" href="mailto:bigcheesegs@gmail.com">bigcheesegs@gmail.com</a>, <a class="moz-txt-link-abbreviated" href="mailto:shankarke@gmail.com">shankarke@gmail.com</a>, <a class="moz-txt-link-abbreviated" href="mailto:kledzik@apple.com">kledzik@apple.com</a>
Reply-To: <a class="moz-txt-link-abbreviated" href="mailto:reviews+D1829+public+e688e59ffde578e7@llvm-reviews.chandlerc.com">reviews+D1829+public+e688e59ffde578e7@llvm-reviews.chandlerc.com</a>
Hi Bigcheese, 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 and Write on systems without
a mach-o tools. Therefore, we want to support a textual way (YAML) to represent
mach-o files.
MachONormalizedFile.h defines an in-memory abstraction of the content of mach-o
files. The in-memory data structures are always native endianess and always
use 64-bit sizes. This means there are no C++ templates for handling mach-o
pointer size and endianness. This internal data structure can then be converted to or
from three different formats: 1) yaml (text) encoded mach-o, 2) binary mach-o
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. The next patch will implement
the conversion from normalized to binary mach-o.
This patch includes unit tests to validate the yaml conversion APIs.
This is an update to D1276. Since that time, I have:
* switched to using Support/MachO.h
* extended the normalized mach-o data structure to support final linked
image (not just object files)
* I've implemented the normalized->binary code (patch coming soon) to
validate the normalized mach-o data structure.
<a class="moz-txt-link-freetext" href="http://llvm-reviews.chandlerc.com/D1829">http://llvm-reviews.chandlerc.com/D1829</a>
Files:
include/lld/ReaderWriter/MachOLinkingContext.h
unittests/MachOTests
unittests/MachOTests/MachONormalizedFileYAMLTests.cpp
unittests/MachOTests/CMakeLists.txt
unittests/CMakeLists.txt
lib/ReaderWriter/MachO/MachONormalizedFileYAML.cpp
lib/ReaderWriter/MachO/MachONormalizedFile.h
lib/ReaderWriter/MachO/MachOLinkingContext.cpp
lib/ReaderWriter/MachO/CMakeLists.txt
</pre>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<blockquote type="cite">
<pre wrap="">
</pre>
</blockquote>
<pre wrap="">
</pre>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
llvm-commits mailing list
<a class="moz-txt-link-abbreviated" href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a>
<a class="moz-txt-link-freetext" href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a>
</pre>
</blockquote>
</blockquote>
<br>
<br>
<pre class="moz-signature" cols="72">--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by the Linux Foundation</pre>
</body>
</html>