1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-23 21:13:02 +02:00
llvm-mirror/test/DebugInfo/Generic
Dehao Chen 967f2c7d51 Add -debug-info-for-profiling to emit more debug info for sample pgo profile collection
Summary:
SamplePGO binaries built with -gmlt to collect profile. The current -gmlt debug info is limited, and we need some additional info:

* start line of all subprograms
* linkage name of all subprograms
* standalone subprograms (functions that has neither inlined nor been inlined)

This patch adds these information to the -gmlt binary. The impact on speccpu2006 binary size (size increase comparing with -g0 binary, also includes data for -g binary, which does not change with this patch):

               -gmlt(orig) -gmlt(patched) -g
433.milc       4.68%       5.40%          19.73%
444.namd       8.45%       8.93%          45.99%
447.dealII     97.43%      115.21%        374.89%
450.soplex     27.75%      31.88%         126.04%
453.povray     21.81%      26.16%         92.03%
470.lbm        0.60%       0.67%          1.96%
482.sphinx3    5.77%       6.47%          26.17%
400.perlbench  17.81%      19.43%         73.08%
401.bzip2      3.73%       3.92%          12.18%
403.gcc        31.75%      34.48%         122.75%
429.mcf        0.78%       0.88%          3.89%
445.gobmk      6.08%       7.92%          42.27%
456.hmmer      10.36%      11.25%         35.23%
458.sjeng      5.08%       5.42%          14.36%
462.libquantum 1.71%       1.96%          6.36%
464.h264ref    15.61%      16.56%         43.92%
471.omnetpp    11.93%      15.84%         60.09%
473.astar      3.11%       3.69%          14.18%
483.xalancbmk  56.29%      81.63%         353.22%
geomean        15.60%      18.30%         57.81%

Debug info size change for -gmlt binary with this patch:

433.milc       13.46%
444.namd       5.35%
447.dealII     18.21%
450.soplex     14.68%
453.povray     19.65%
470.lbm        6.03%
482.sphinx3    11.21%
400.perlbench  8.91%
401.bzip2      4.41%
403.gcc        8.56%
429.mcf        8.24%
445.gobmk      29.47%
456.hmmer      8.19%
458.sjeng      6.05%
462.libquantum 11.23%
464.h264ref    5.93%
471.omnetpp    31.89%
473.astar      16.20%
483.xalancbmk  44.62%
geomean        16.83%

Reviewers: davidxl, echristo, dblaikie

Reviewed By: echristo, dblaikie

Subscribers: aprantl, probinson, llvm-commits, mehdi_amini

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

llvm-svn: 292457
2017-01-19 00:44:11 +00:00
..
2009-10-16-Phi.ll
2009-11-03-InsertExtractValue.ll
2009-11-05-DeadGlobalVariable.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
2009-11-06-NamelessGlobalVariable.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
2009-11-10-CurrentFn.ll
2010-01-05-DbgScope.ll
2010-03-12-llc-crash.ll
2010-03-19-DbgDeclare.ll
2010-03-24-MemberFn.ll
2010-04-06-NestedFnDbgInfo.ll
2010-04-19-FramePtr.ll
2010-05-03-DisableFramePtr.ll
2010-05-03-OriginDIE.ll
2010-05-10-MultipleCU.ll
2010-06-29-InlinedFnLocalVar.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
2010-10-01-crash.ll DebugInfo: Emit ranges for functions with DISubprograms but lacking locations on any instructions 2016-12-15 23:17:52 +00:00
accel-table-hash-collisions.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
array.ll
block-asan.ll
bug_null_debuginfo.ll
constant-pointers.ll
constant-sdnodes-have-dbg-location.ll
constantfp-sdnodes-have-dbg-location.ll
cross-cu-inlining.ll
cross-cu-linkonce-distinct.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
cross-cu-linkonce.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
cu-range-hole.ll
cu-ranges.ll
dbg-at-specficiation.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
dead-argument-order.ll
debug-info-always-inline.ll
debug-info-qualifiers.ll
debuginfofinder-forward-declaration.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
debuginfofinder-multiple-cu.ll
def-line.ll
discriminator.ll
dwarf-public-names.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
empty.ll Speculatively revert r289925, see PR31407 2016-12-16 14:02:28 +00:00
enum-types.ll
enum.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
global.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
gmlt.test Add -debug-info-for-profiling to emit more debug info for sample pgo profile collection 2017-01-19 00:44:11 +00:00
gvn.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
incorrect-variable-debugloc1.ll
incorrect-variable-debugloc.ll [TBAAVerifier] Be stricter around verifying scalar nodes 2016-12-29 15:47:05 +00:00
indvar-discriminator.ll [IndVarSimplify][DebugLoc] When widening the exit loop condition, correctly reuse the debug location of the original comparison. 2016-10-26 10:28:32 +00:00
inheritance.ll
inline-debug-info-multiret.ll
inline-debug-info.ll
inline-debug-loc.ll [InlineFunction] Do not propagate the callsite debug location to instructions inlined from functions with debug info. 2016-12-07 10:37:26 +00:00
inline-no-debug-info.ll
inline-scopes.ll
inlined-arguments.ll
inlined-vars.ll
instcombine-phi.ll [InstCombine] Folding of a compare with RHS const should merge debug locations 2016-12-14 20:27:22 +00:00
licm-hoist-debug-loc.ll [DWARF] Null out the debug locs of (loop invariant) instructions hoisted by LICM in 2017-01-06 18:38:57 +00:00
linkage-name-abstract.ll [DWARF] Put linkage-name on abstract origin even when there's a declaration. 2016-12-02 01:55:17 +00:00
lit.local.cfg
location-verifier.ll
lto-comp-dir.ll
mainsubprogram.ll [DebugInfo] Add support for DW_AT_main_subprogram on subprograms 2016-11-28 21:32:19 +00:00
member-order.ll
member-pointers.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
missing-abstract-variable.ll
multiline.ll
namespace_function_definition.ll
namespace_inline_function_definition.ll
namespace.ll [IR] Remove the DIExpression field from DIGlobalVariable. 2016-12-20 02:09:43 +00:00
nodebug.ll
noscopes.ll DebugInfo: Make a Generic test case actually generic (remove datalayout/triple) 2016-12-15 23:39:25 +00:00
piece-verifier.ll [DIExpression] Introduce a dedicated DW_OP_LLVM_fragment operation 2016-12-05 18:04:47 +00:00
PR20038.ll
ptrsize.ll
recursive_inlining.ll [TBAAVerifier] Be stricter around verifying scalar nodes 2016-12-29 15:47:05 +00:00
restrict.ll
simplifycfg_sink_last_inst.ll [DebugInfo] Handle same locations in DILocation::getMergedLocation 2017-01-12 20:34:35 +00:00
skeletoncu.ll
sugared-constants.ll
sunk-compare.ll Preserve the debug location when CodeGenPrepare sinks a compare instruction into the 2016-10-06 21:43:45 +00:00
template-recursive-void.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
tu-composite.ll
tu-member-pointer.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
two-cus-from-same-file.ll
typedef.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
unconditional-branch.ll
varargs.ll
version.ll
virtual-index.ll