if (_gmonparam.kcountsize > 0) { struct iovec iov[3] = { { &tag, sizeof (tag) }, { &thdr, sizeof (struct gmon_hist_hdr) }, { _gmonparam.kcount, _gmonparam.kcountsize } };
if (_gmonparam.state != GMON_PROF_ERROR) write_gmon ();
weak_alias(__monstartup, monstartup)static voidinternal_functionwrite_hist (fd)     int fd;{  u_char tag = GMON_TAG_TIME_HIST;  struct gmon_hist_hdr thdr __attribute__ ((aligned (__alignof__ (char *))));  if (_gmonparam.kcountsize > 0)    {      struct iovec iov[3] =        {	  { &tag, sizeof (tag) },	  { &thdr, sizeof (struct gmon_hist_hdr) },	  { _gmonparam.kcount, _gmonparam.kcountsize }	};      *(char **) thdr.low_pc = (char *) _gmonparam.lowpc;      *(char **) thdr.high_pc = (char *) _gmonparam.highpc;      *(int32_t *) thdr.hist_size = (_gmonparam.kcountsize				     / sizeof (HISTCOUNTER));      *(int32_t *) thdr.prof_rate = __profile_frequency ();      strncpy (thdr.dimen, "seconds", sizeof (thdr.dimen));      thdr.dimen_abbrev = 's';      __writev (fd, iov, 3);    }}