llvm-project/llvm
Zachary Turner ea40f40e1b [PDB] Add an explain subcommand.
When investigating various things, we often have a file offset
and what to know what's in the PDB at that address.  For example
we may be doing a binary comparison of two LLD-generated PDBs
to look for sources of non-determinism, or we may wish to compare
an LLD-generated PDB with a Microsoft generated PDB for sources
of byte-for-byte incompatibility.  In these cases, we can do a
binary diff of the two files, and once we find a mismatched byte
we can use explain to figure out what that byte is, immediately
honining in on the problem.

This patch implements this by trying to narrow the meaning of
a particular file offset down as much as possible.

Differential Revision: https://reviews.llvm.org/D44959

llvm-svn: 328799
2018-03-29 16:28:20 +00:00
..
bindings [bindings/go] Add a missing `,` in the test code to fix a go compile 2018-03-17 15:12:52 +00:00
cmake Rename llvm library from libLLVM-X.Y to libLLVM-X 2018-03-29 09:44:09 +00:00
docs [Kaleidoscope] Tiny typo fixes 2018-03-29 12:31:06 +00:00
examples Transforms: Introduce Transforms/Utils.h rather than spreading the declarations amongst Scalar.h and IPO.h 2018-03-28 17:44:36 +00:00
include [Hexagon] Add support to handle bit-reverse load intrinsics 2018-03-29 13:52:46 +00:00
lib [JumpThreading] Don't select an edge that we know we can't thread 2018-03-29 16:01:26 +00:00
projects
resources
runtimes
test [PDB] Add an explain subcommand. 2018-03-29 16:28:20 +00:00
tools [PDB] Add an explain subcommand. 2018-03-29 16:28:20 +00:00
unittests [ORC] Restore the narrower check from before r328687. 2018-03-28 15:58:14 +00:00
utils Add missing dependency (headers are included from MC, so a link dependency could exist easily enough) 2018-03-29 00:29:43 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitattributes
.gitignore
CMakeLists.txt Ensure that DataTypes.h is installed now that it's moved to llvm-c 2018-03-21 18:21:57 +00:00
CODE_OWNERS.TXT
CREDITS.TXT
LICENSE.TXT
LLVMBuild.txt
README.txt
RELEASE_TESTERS.TXT
configure
llvm.spec.in

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.