Fork of llvm with experimental commits and workarounds for RPCS3
Go to file
Chris Bieneman d8b6eab87c [obj2yaml] [yaml2obj] Support for MachO Load Command data
This re-applies r270115.

Many of the MachO load commands can have data appended after the command structure. This data is frequently strings, but can actually be anything. This patch adds support for three optional fields on load command yaml descriptions.

The new PayloadString YAML field is populated with the data after load commands known to have strings as extra data.

The new ZeroPadBytes YAML field is a count of zero'd bytes after the end of the load command structure before the next command. This can apply anywhere in the file. MachO2YAML verifies that bytes are zero before populating this field, and YAML2MachO will add zero'd bytes.

The new PayloadBytes YAML field stores all bytes after the end of the load command structure before the next command if they are non-zero. This is a catch all for all unhandled bytes. If MachO2Yaml populates PayloadBytes it will not populate ZeroPadBytes, instead zero'd bytes will be in the PayloadBytes structure.

llvm-svn: 270124
2016-05-19 20:54:43 +00:00
bindings
cmake Work around a glibc bug: backtrace() spuriously fails if 2016-05-18 22:26:36 +00:00
docs docs: Update and clean up BitCodeFormat.rst. 2016-05-17 22:30:58 +00:00
examples Fix some Clang-tidy modernize-use-bool-literals and Include What You Use warnings in examples; other minor fixes. 2016-05-19 01:08:04 +00:00
include [obj2yaml] [yaml2obj] Support for MachO Load Command data 2016-05-19 20:54:43 +00:00
lib [obj2yaml] [yaml2obj] Support for MachO Load Command data 2016-05-19 20:54:43 +00:00
projects
resources
test Recommit r255691 since PR26509 has been fixed. 2016-05-19 20:38:03 +00:00
tools [obj2yaml] [yaml2obj] Support for MachO Load Command data 2016-05-19 20:54:43 +00:00
unittests Retry^3 "[ProfileData] (llvm) Use Error in InstrProf and Coverage, NFC" 2016-05-19 03:54:45 +00:00
utils Fix Clang-tidy modernize-use-bool-literals in generated Target code; other minor fixes; other minor fixes. 2016-05-17 17:04:23 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore
CMakeLists.txt
CODE_OWNERS.TXT Update my email address. 2016-05-10 16:23:54 +00:00
configure
CREDITS.TXT Update my email address. 2016-05-10 16:23:54 +00:00
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
README.txt

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for LLVM,
a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.