| 1729 | } |
| 1730 | |
| 1731 | static void |
| 1732 | prof_fdump(void) { |
| 1733 | tsd_t *tsd; |
| 1734 | char filename[DUMP_FILENAME_BUFSIZE]; |
| 1735 | |
| 1736 | cassert(config_prof); |
| 1737 | assert(opt_prof_final); |
| 1738 | assert(opt_prof_prefix[0] != '\0'); |
| 1739 | |
| 1740 | if (!prof_booted) { |
| 1741 | return; |
| 1742 | } |
| 1743 | tsd = tsd_fetch(); |
| 1744 | assert(tsd_reentrancy_level_get(tsd) == 0); |
| 1745 | |
| 1746 | malloc_mutex_lock(tsd_tsdn(tsd), &prof_dump_seq_mtx); |
| 1747 | prof_dump_filename(filename, 'f', VSEQ_INVALID); |
| 1748 | malloc_mutex_unlock(tsd_tsdn(tsd), &prof_dump_seq_mtx); |
| 1749 | prof_dump(tsd, false, filename, opt_prof_leak); |
| 1750 | } |
| 1751 | |
| 1752 | bool |
| 1753 | prof_accum_init(tsdn_t *tsdn, prof_accum_t *prof_accum) { |
nothing calls this directly
no test coverage detected