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