summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/profile/InstrProfilingPlatformDarwin.c
Commit message (Collapse)AuthorAgeFilesLines
* Reland compiler-rt support for order file instrumentation.Manman Ren2019-03-081-0/+5
| | | | | | | | | | | | | | r355343 was landed and was reverted in r355363 due to build breakage. This patch adds Linux/Windows support on top of r355343. In this patch, Darwin should be working with testing case. Linux should be working, I will enable the testing case in a follwup diff. Windows/Other should be building. Correct implementation for Other platforms will be added. Thanks David for reviewing the original diff, helping me with issues on Linux, and giving suggestions for adding support for Other platforms. llvm-svn: 355701
* Revert compiler-rt diffs for order file instrumentation to get bot green!Manman Ren2019-03-051-5/+0
| | | | | | | | This caused issues on Linux/Windows and other platforms. r355343 355350 355350 llvm-svn: 355363
* Order File Instrumentation: dump the data in compiler-rtManman Ren2019-03-041-0/+5
| | | | | | | | The profile data will be dumped in a file default_xxx.profraw.order. Differential Revision: https://reviews.llvm.org/D57530 llvm-svn: 355343
* [InstrProf] Fix darwin errors after r353547Francis Visoiu Mistrih2019-02-081-8/+8
| | | | | | | | | | The macros were changed but not updated in the Darwin version. Fail here: http://green.lab.llvm.org/green/job/clang-stage1-configure-RA/53739/ rdar://47925820 llvm-svn: 353560
* Update the file headers across all of the LLVM projects in the monorepoChandler Carruth2019-01-191-4/+3
| | | | | | | | | | | | | | | | | to reflect the new license. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351636
* [profile] initialize static pool properly Xinliang David Li2016-05-221-0/+3
| | | | | | | Remove dependency on runtime initializer to avoid issues related to initialization order. llvm-svn: 270371
* Fix a typo (darwin only)Xinliang David Li2016-05-211-1/+1
| | | | llvm-svn: 270339
* Fix typoXinliang David Li2016-05-211-1/+1
| | | | llvm-svn: 270338
* [profile] Static counter allocation for value profiling (part-2)Xinliang David Li2016-05-211-0/+14
| | | | | | Differential Revision: http://reviews.llvm.org/D20460 llvm-svn: 270337
* [PGO] cleanup: unify prefix for portability macrosXinliang David Li2015-12-161-12/+12
| | | | llvm-svn: 255748
* [PGO] Unify section name, section symbol definitions (Darwin)Xinliang David Li2015-11-231-6/+10
| | | | | | | Replace hard-coded references to names to key section and section symbols with common macro definitions. llvm-svn: 253907
* [PGO] Compiler-rt cleanup -- introduces macros for various macrosXinliang David Li2015-11-231-19/+18
| | | | | | | This makes code more readable and be made more portable in the future. There is no functional change. llvm-svn: 253845
* profile: Avoid name collisions between instrumentation and runtimeJustin Bogner2014-09-041-6/+6
| | | | | | | | | | | | The naming scheme we're using for counters in profile data shares a prefix with some fixed names we use for the runtime, notably __llvm_profile_data_begin and _end. Embarrassingly, this means a function called begin() can't be instrumented. This modifies the runtime names so as not to collide with the instrumentation. llvm-svn: 217166
* InstrProf: Fix shared object profilingDuncan P. N. Exon Smith2014-05-161-0/+12
| | | | | | | | | | | | | | | | | | Change the API of the instrumented profiling library to work with shared objects. - Most things are now declared hidden, so that each executable gets its own copy. - Initialization hooks up a linked list of writers. - The raw format with shared objects that are profiled consists of a concatenated series of profiles. llvm-profdata knows how to deal with that since r208938. <rdar://problem/16918688> llvm-svn: 208940
* [profile] Flatten profile runtime - define platform-specific code in ↵Alexey Samsonov2014-04-221-0/+2
| | | | | | sources, not in the build system llvm-svn: 206915
* InstrProf: Reorganize files; no functionality changeDuncan P. N. Exon Smith2014-03-211-1/+1
| | | | | | | | | | | | | | | | | | Move functions around to prepare for some other changes. - Merge InstrProfilingExtras.h with InstrProfiling.h. There's no benefit to having these split. - Rename InstrProfilingExtras.c to InstrProfilingFile.c. - Split actual buffer writing code out of InstrProfiling.c into InstrProfilingBuffer.c. - Drive-by corrections of a couple of header comments. <rdar://problem/15943240> llvm-svn: 204497
* PGO: Declare zero-argument C functions as foo(void)Duncan P. N. Exon Smith2014-03-201-6/+10
| | | | | | | | It turns out this is C code. Specify foo(void). <rdar://problem/15943240> llvm-svn: 204396
* PGO: Change runtime prefix from pgo to profileDuncan P. N. Exon Smith2014-03-201-12/+12
| | | | | | | | | | | These functions are in the profile runtime. PGO comes later. Unfortunately, there's only room for 16 characters in a Darwin section, so use __llvm_prf_ instead of __llvm_profile_ for section names. <rdar://problem/15943240> llvm-svn: 204391
* PGO: Add function to reset counters at runtimeDuncan P. N. Exon Smith2014-03-201-2/+2
| | | | | | | | Adding __llvm_pgo_reset_counters(), which sets all the counters to 0. <rdar://problem/15943240> llvm-svn: 204386
* PGO: Moving files for clarityDuncan P. N. Exon Smith2014-03-201-0/+25
<rdar://problem/15943240> llvm-svn: 204373
OpenPOWER on IntegriCloud