llvm/test/tools
Teresa Johnson dc6615addb [ThinLTO] Support for reference graph in per-module and combined summary.
Summary:
This patch adds support for including a full reference graph including
call graph edges and other GV references in the summary.

The reference graph edges can be used to make importing decisions
without materializing any source modules, can be used in the plugin
to make file staging decisions for distributed build systems, and is
expected to have other uses.

The call graph edges are recorded in each function summary in the
bitcode via a list of <CalleeValueIds, StaticCount> tuples when no PGO
data exists, or <CalleeValueId, StaticCount, ProfileCount> pairs when
there is PGO, where the ValueId can be mapped to the function GUID via
the ValueSymbolTable. In the function index in memory, the call graph
edges reference the target via the CalleeGUID instead of the
CalleeValueId.

The reference graph edges are recorded in each summary record with a
list of referenced value IDs, which can be mapped to value GUID via the
ValueSymbolTable.

Addtionally, a new summary record type is added to record references
from global variable initializers. A number of bitcode records and data
structures have been renamed to reflect the newly expanded scope of the
summary beyond functions. More cleanup will follow.

Reviewers: joker.eph, davidxl

Subscribers: joker.eph, llvm-commits

Differential Revision: http://reviews.llvm.org/D17212

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263275 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-11 18:52:24 +00:00
..
dsymutil Fix tests that used CHECK-NEXT-NOT and CHECK-DAG-NOT. 2016-02-26 19:40:34 +00:00
gold [ThinLTO] Support for reference graph in per-module and combined summary. 2016-03-11 18:52:24 +00:00
llvm-config Disable all llvm-config tests for now, will investigate later 2016-02-10 17:29:50 +00:00
llvm-cov Fix buildbot failure (hosts without zlib) 2016-02-10 22:05:41 +00:00
llvm-cxxdump [llvm-cxxdump] Remove duplicate code check. 2015-09-15 23:35:32 +00:00
llvm-dwp llvm-dwp: provide diagnostics for duplicate DWO IDs 2016-02-26 07:30:15 +00:00
llvm-lit
llvm-lto [ThinLTO] Support for reference graph in per-module and combined summary. 2016-03-11 18:52:24 +00:00
llvm-mc [Hexagon] Removing XFAIL on Hexagon target. 2015-11-09 06:15:55 +00:00
llvm-nm Make llvm-nm test consistent with other tests 2016-02-10 23:28:43 +00:00
llvm-objdump [DebugInfo] Dump CIE augmentation data as a list of hex bytes 2016-03-01 18:38:05 +00:00
llvm-pdbdump Fix several accidental DOS line endings in source files 2016-01-03 17:22:03 +00:00
llvm-profdata Revert r260064, "Disable llvm/test/tools/llvm-profdata/value-prof.proftext on win32 for now. Investigating." 2016-02-25 08:50:26 +00:00
llvm-readobj [llvm-readobj] Enable GNU style section group print 2016-03-09 19:16:13 +00:00
llvm-size [llvm-size] Make error handling uniform. 2016-02-13 01:38:16 +00:00
llvm-split [SplitModule] In split module utility we should never separate alias with its aliasee. 2016-01-28 18:59:28 +00:00
llvm-symbolizer Make llvm/test/tools/llvm-symbolizer/pdb/pdb.test Py3-compatible. 2016-02-15 13:19:13 +00:00
lto Fix test from r261013 2016-02-16 22:50:19 +00:00
sancov [sancov] print_coverage_points command. 2016-02-27 02:21:44 +00:00
sanstats Introduce sanstats tool and llvm::CreateSanitizerStatReport function. 2016-01-16 00:31:11 +00:00