Lines Matching refs:ch
163 static int __symbol__account_cycles(struct cyc_hist *ch, in __symbol__account_cycles() argument
176 ch[offset].num_aggr++; in __symbol__account_cycles()
177 ch[offset].cycles_aggr += cycles; in __symbol__account_cycles()
179 if (cycles > ch[offset].cycles_max) in __symbol__account_cycles()
180 ch[offset].cycles_max = cycles; in __symbol__account_cycles()
182 if (ch[offset].cycles_min) { in __symbol__account_cycles()
183 if (cycles && cycles < ch[offset].cycles_min) in __symbol__account_cycles()
184 ch[offset].cycles_min = cycles; in __symbol__account_cycles()
186 ch[offset].cycles_min = cycles; in __symbol__account_cycles()
188 if (!have_start && ch[offset].have_start) in __symbol__account_cycles()
190 if (ch[offset].num) { in __symbol__account_cycles()
191 if (have_start && (!ch[offset].have_start || in __symbol__account_cycles()
192 ch[offset].start > start)) { in __symbol__account_cycles()
193 ch[offset].have_start = 0; in __symbol__account_cycles()
194 ch[offset].cycles = 0; in __symbol__account_cycles()
195 ch[offset].num = 0; in __symbol__account_cycles()
196 if (ch[offset].reset < 0xffff) in __symbol__account_cycles()
197 ch[offset].reset++; in __symbol__account_cycles()
199 ch[offset].start < start) in __symbol__account_cycles()
203 if (ch[offset].num < NUM_SPARKS) in __symbol__account_cycles()
204 ch[offset].cycles_spark[ch[offset].num] = cycles; in __symbol__account_cycles()
206 ch[offset].have_start = have_start; in __symbol__account_cycles()
207 ch[offset].start = start; in __symbol__account_cycles()
208 ch[offset].cycles += cycles; in __symbol__account_cycles()
209 ch[offset].num++; in __symbol__account_cycles()
468 … void annotation__count_and_fill(struct annotation *notes, u64 start, u64 end, struct cyc_hist *ch) in annotation__count_and_fill() argument
474 if (n_insn && ch->num && ch->cycles) { in annotation__count_and_fill()
477 float ipc = n_insn / ((double)ch->cycles / (double)ch->num); in annotation__count_and_fill()
480 if (ch->reset >= 0x7fff) in annotation__count_and_fill()
500 branch->hit_cycles += ch->cycles; in annotation__count_and_fill()
501 branch->hit_insn += n_insn * ch->num; in annotation__count_and_fill()
524 struct cyc_hist *ch; in annotation__compute_ipc() local
526 ch = ¬es->branch->cycles_hist[offset]; in annotation__compute_ipc()
527 if (ch && ch->cycles) { in annotation__compute_ipc()
538 if (ch->have_start) in annotation__compute_ipc()
539 annotation__count_and_fill(notes, ch->start, offset, ch); in annotation__compute_ipc()
540 if (al && ch->num_aggr) { in annotation__compute_ipc()
541 al->cycles->avg = ch->cycles_aggr / ch->num_aggr; in annotation__compute_ipc()
542 al->cycles->max = ch->cycles_max; in annotation__compute_ipc()
543 al->cycles->min = ch->cycles_min; in annotation__compute_ipc()
553 al->num_aggr = ch->num_aggr; in annotation__compute_ipc()
564 struct cyc_hist *ch = ¬es->branch->cycles_hist[offset]; in annotation__compute_ipc() local
566 if (ch && ch->cycles) { in annotation__compute_ipc()