llvm-project/llvm/test/Transforms/SampleProfile
Hongtao Yu 47c1f2741f Properly add out-of-module functions to the import list
This patch addresses two issues related to adding inline functions to the import list while recursively going through the profiling data.
1. For callsite samples, only add an inlined function to the import list if it's from outside of the module (i.e. only has a declaration inside the module).
2. For body samples, add each target function to the import list if it's from outside of the module (i.e. only has a declaration inside the module). Previously we were using getSubProgram() to check whether it has dbg info, which is inaccurate. This fix properly add imports and could improve the quality of the pass.

Added a few changes to the test to catch these cases.

Differential Revision: https://reviews.llvm.org/D79379
2020-05-11 10:00:14 -07:00
..
Inputs Properly add out-of-module functions to the import list 2020-05-11 10:00:14 -07:00
branch.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
calls.ll
cold-indirect-call.ll
compressed-profile-symbol-list.ll
cov-zero-samples.ll
coverage-warning.ll
discriminator.ll
early-inline.ll
entry_counts.ll
entry_counts_cold.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
entry_counts_missing_dbginfo.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
flattened.ll
fnptr.ll
function_metadata.ll Properly add out-of-module functions to the import list 2020-05-11 10:00:14 -07:00
gcc-simple.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
indirect-call-gcc.ll
indirect-call.ll [SampleFDO] Fix invalid branch profile generated by indirect call promotion. 2020-01-15 18:36:06 -08:00
inline-act.ll Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
inline-callee-update.ll [SampleFDO] Fix invalid branch profile generated by indirect call promotion. 2020-01-15 18:36:06 -08:00
inline-cold-callsite-samplepgo.ll
inline-cold.ll [AutoFDO] Inline replay for cold/small callees from sample profile loader 2019-12-06 11:44:45 -08:00
inline-combine.ll
inline-coverage.ll [AutoFDO] Statistic for context sensitive profile guided inlining 2019-12-11 21:37:21 -08:00
inline-mergeprof.ll [AutoFDO] Properly merge context-sensitive profile of inlinee back to outlined function 2019-12-05 15:57:55 -08:00
inline-stats.ll [AutoFDO] Statistic for context sensitive profile guided inlining 2019-12-11 21:37:21 -08:00
inline-topdown.ll [AutoFDO] Top-down Inlining for specialization with context-sensitive profile 2019-12-05 16:07:01 -08:00
inline.ll
nodebug.ll
nolocinfo.ll
offset.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
profile-format-compress.ll
profile-format.ll [SampleFDO] Port MD5 name table support to extbinary format. 2020-03-30 22:07:08 -07:00
profile-sample-accurate.ll
propagate.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
remap.ll Fix test for profile remapper 2020-02-18 17:58:32 -08:00
remarks.ll Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
section-accurate-samplepgo.ll [SampleFDO] For functions without profiles, provide an option to put 2020-05-08 11:18:09 -07:00
summary.ll
syntax.ll
uncompressed-profile-symbol-list.ll
warm-inline-instance.ll