llvm-project/llvm
Rui Ueyama 9c674e6851 llvm-objdump: Print x64 unwind info in executable.
The original code does not work correctly on executable files because the
code is written in such a way that only object files are assumed to be given
to llvm-objdump.

Contents of RuntimeFunction are different between executables and objects. In
executables, fields in RuntimeFunction have actual addresses to unwind info
structures. On the other hand, in object files, the fields have zero value,
but instead there are relocations pointing to the fields, so that Linker will
fill them at link-time.

So, when we are reading an object file, we need to use relocation info to
find the location of unwind info. When executable, we should just look at the
values in RuntimeFunction.

llvm-svn: 202785
2014-03-04 04:00:55 +00:00
..
autoconf Add patch level to llvm version in CMake and Autoconf 2014-03-03 15:22:00 +00:00
bindings [python-bindings] Remove some cruft that snuck in. 2014-02-23 04:43:26 +00:00
cmake [C++11] Switch the CMake option from LLVM_ENABLE_CXX11 (default on) to 2014-03-01 03:16:07 +00:00
docs Avoid std::function until PR19030 is fixed 2014-03-03 21:12:13 +00:00
examples Use DataLayout from the module when easily available. 2014-02-25 23:25:17 +00:00
include Add missing include. 2014-03-03 20:06:13 +00:00
lib [AArch64]Fix improper diagnostics about offset range of load/store instructions. 2014-03-04 02:05:13 +00:00
projects Drop libtool from llvm. 2014-02-28 18:17:54 +00:00
test llvm-objdump: Print x64 unwind info in executable. 2014-03-04 04:00:55 +00:00
tools llvm-objdump: Print x64 unwind info in executable. 2014-03-04 04:00:55 +00:00
unittests Give APInt move semantics. 2014-03-02 20:56:28 +00:00
utils Adding support for MSVC debugger visualization of the Optional datatype. 2014-03-03 21:15:07 +00:00
.arcconfig
.clang-format Test commit. 2014-03-02 13:08:46 +00:00
.gitignore Added .DS_Store entry in .gitignore for ignoring .DS_Store files in the source 2014-01-25 15:15:16 +00:00
CMakeLists.txt Add patch level to llvm version in CMake and Autoconf 2014-03-03 15:22:00 +00:00
CODE_OWNERS.TXT Add myself as owner for libc++ 2014-02-18 14:03:17 +00:00
CREDITS.TXT Fix documentation typos 2013-12-20 00:33:39 +00:00
LICENSE.TXT Update the copyright credits -- Happy new year 2014! 2014-01-01 08:27:31 +00:00
LLVMBuild.txt
Makefile Provide CMake package modules in install tree 2014-02-09 16:37:02 +00:00
Makefile.common
Makefile.config.in Add patch level to llvm version in CMake and Autoconf 2014-03-03 15:22:00 +00:00
Makefile.rules Add patch level to llvm version in CMake and Autoconf 2014-03-03 15:22:00 +00:00
README.txt
configure Add patch level to llvm version in CMake and Autoconf 2014-03-03 15:22:00 +00:00
llvm.spec.in

README.txt

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

This directory and its subdirectories contain source code for the Low Level
Virtual Machine, 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're writing a package for LLVM, see docs/Packaging.rst for our
suggestions.