llvm-project/llvm/test/Transforms/PGOProfile
Vedant Kumar 55891fc71e Re-apply "[profiling] Remove dead profile name vars after emitting name data"
This reverts 295092 (re-applies 295084), with a fix for dangling
references from the array of coverage names passed down from frontends.

I missed this in my initial testing because I only checked test/Profile,
and not test/CoverageMapping as well.

Original commit message:

The profile name variables passed to counter increment intrinsics are dead
after we emit the finalized name data in __llvm_prf_nm. However, we neglect to
erase these name variables. This causes huge size increases in the
__TEXT,__const section as well as slowdowns when linker dead stripping is
disabled. Some affected projects are so massive that they fail to link on
Darwin, because only the small code model is supported.

Fix the issue by throwing away the name constants as soon as we're done with
them.

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

llvm-svn: 295099
2017-02-14 20:03:48 +00:00
..
Inputs Resubmit "[PGO] Turn off comdat renaming in IR PGO by default" 2017-01-11 20:19:41 +00:00
X86
PR28219.ll Fix PR28219: Use profile summary from reader and not compute it 2016-06-21 19:29:49 +00:00
branch1.ll [Profile] add test with large counts 2016-08-20 05:28:42 +00:00
branch2.ll
comdat_internal.ll Re-apply "[profiling] Remove dead profile name vars after emitting name data" 2017-02-14 20:03:48 +00:00
comdat_rename.ll Resubmit "[PGO] Turn off comdat renaming in IR PGO by default" 2017-01-11 20:19:41 +00:00
criticaledge.ll
diag_FE_profile.ll
diag_mismatch.ll
diag_no_funcprofdata.ll [Profile] improve warning control option 2016-08-11 05:09:30 +00:00
diag_no_profile.ll
do-not-instrument.ll
icp_covariant_call_return.ll
icp_covariant_invoke_return.ll
icp_invoke.ll
icp_mismatch_msg.ll make icall pass name consistent /NFC 2016-06-02 01:52:05 +00:00
icp_vararg.ll
indirect_call_annotation.ll
indirect_call_profile.ll Resubmit "[PGO] Turn off comdat renaming in IR PGO by default" 2017-01-11 20:19:41 +00:00
indirect_call_promotion.ll make icall pass name consistent /NFC 2016-06-02 01:52:05 +00:00
landingpad.ll
loop1.ll
loop2.ll
multiple_hash_profile.ll Fix some broken CHECK lines. 2017-01-22 20:28:56 +00:00
noreturncall.ll Fix the test cases committed in r289521. 2016-12-13 17:34:29 +00:00
preinline.ll [Profile] Use explicit flag to enable IR PGO 2016-07-23 04:28:52 +00:00
select1.ll [Profile] Implement select instruction instrumentation in IR PGO 2016-09-18 18:34:07 +00:00
select2.ll [PGO] Fix select instruction annotation 2016-10-25 21:47:24 +00:00
single_bb.ll
statics_counter_naming.ll [PGO] Don't include full file path in static function profile counter names 2016-07-12 17:14:51 +00:00
switch.ll
thinlto_indirect_call_promotion.ll [ThinLTO] Indirect call promotion fixes for promoted local functions 2016-08-29 22:46:56 +00:00
unreachable_bb.ll [PGO] Fix PGO use ICE when there are unreachable BBs 2016-12-02 19:10:29 +00:00