Make prof_idump_accum() non-inline

This commit is contained in:
Yinan Zhang 2020-04-15 12:13:22 -07:00
parent 039bfd4e30
commit e10e5059e8
3 changed files with 6 additions and 15 deletions

View File

@ -48,9 +48,6 @@ extern size_t lg_prof_sample;
extern bool prof_booted; extern bool prof_booted;
/* Functions only accessed in prof_inlines_a.h */
bool prof_idump_accum_impl(tsdn_t *tsdn, uint64_t accumbytes);
/* Functions only accessed in prof_inlines_b.h */ /* Functions only accessed in prof_inlines_b.h */
prof_tdata_t *prof_tdata_init(tsd_t *tsd); prof_tdata_t *prof_tdata_init(tsd_t *tsd);
prof_tdata_t *prof_tdata_reinit(tsd_t *tsd, prof_tdata_t *tdata); prof_tdata_t *prof_tdata_reinit(tsd_t *tsd, prof_tdata_t *tdata);
@ -78,6 +75,7 @@ void prof_cnt_all(uint64_t *curobjs, uint64_t *curbytes, uint64_t *accumobjs,
int prof_getpid(void); int prof_getpid(void);
void prof_get_default_filename(tsdn_t *tsdn, char *filename, uint64_t ind); void prof_get_default_filename(tsdn_t *tsdn, char *filename, uint64_t ind);
bool prof_accum_init(void); bool prof_accum_init(void);
bool prof_idump_accum(tsdn_t *tsdn, uint64_t accumbytes);
void prof_idump(tsdn_t *tsdn); void prof_idump(tsdn_t *tsdn);
bool prof_mdump(tsd_t *tsd, const char *filename); bool prof_mdump(tsd_t *tsd, const char *filename);
void prof_gdump(tsdn_t *tsdn); void prof_gdump(tsdn_t *tsdn);

View File

@ -25,15 +25,4 @@ prof_active_get_unlocked(void) {
return prof_active; return prof_active;
} }
JEMALLOC_ALWAYS_INLINE bool
prof_idump_accum(tsdn_t *tsdn, uint64_t accumbytes) {
cassert(config_prof);
if (prof_interval == 0 || !prof_active_get_unlocked()) {
return false;
}
return prof_idump_accum_impl(tsdn, accumbytes);
}
#endif /* JEMALLOC_INTERNAL_PROF_INLINES_A_H */ #endif /* JEMALLOC_INTERNAL_PROF_INLINES_A_H */

View File

@ -649,9 +649,13 @@ prof_accum_init(void) {
} }
bool bool
prof_idump_accum_impl(tsdn_t *tsdn, uint64_t accumbytes) { prof_idump_accum(tsdn_t *tsdn, uint64_t accumbytes) {
cassert(config_prof); cassert(config_prof);
if (prof_interval == 0 || !prof_active_get_unlocked()) {
return false;
}
return counter_accum(tsdn, &prof_idump_accumulated, accumbytes); return counter_accum(tsdn, &prof_idump_accumulated, accumbytes);
} }