Lines Matching refs:ch
817 static int __symbol__account_cycles(struct cyc_hist *ch, in __symbol__account_cycles() argument
830 ch[offset].num_aggr++; in __symbol__account_cycles()
831 ch[offset].cycles_aggr += cycles; in __symbol__account_cycles()
833 if (cycles > ch[offset].cycles_max) in __symbol__account_cycles()
834 ch[offset].cycles_max = cycles; in __symbol__account_cycles()
836 if (ch[offset].cycles_min) { in __symbol__account_cycles()
837 if (cycles && cycles < ch[offset].cycles_min) in __symbol__account_cycles()
838 ch[offset].cycles_min = cycles; in __symbol__account_cycles()
840 ch[offset].cycles_min = cycles; in __symbol__account_cycles()
842 if (!have_start && ch[offset].have_start) in __symbol__account_cycles()
844 if (ch[offset].num) { in __symbol__account_cycles()
845 if (have_start && (!ch[offset].have_start || in __symbol__account_cycles()
846 ch[offset].start > start)) { in __symbol__account_cycles()
847 ch[offset].have_start = 0; in __symbol__account_cycles()
848 ch[offset].cycles = 0; in __symbol__account_cycles()
849 ch[offset].num = 0; in __symbol__account_cycles()
850 if (ch[offset].reset < 0xffff) in __symbol__account_cycles()
851 ch[offset].reset++; in __symbol__account_cycles()
853 ch[offset].start < start) in __symbol__account_cycles()
856 ch[offset].have_start = have_start; in __symbol__account_cycles()
857 ch[offset].start = start; in __symbol__account_cycles()
858 ch[offset].cycles += cycles; in __symbol__account_cycles()
859 ch[offset].num++; in __symbol__account_cycles()
1023 … void annotation__count_and_fill(struct annotation *notes, u64 start, u64 end, struct cyc_hist *ch) in annotation__count_and_fill() argument
1030 if (n_insn && ch->num && ch->cycles) { in annotation__count_and_fill()
1031 float ipc = n_insn / ((double)ch->cycles / (double)ch->num); in annotation__count_and_fill()
1034 if (ch->reset >= 0x7fff) in annotation__count_and_fill()
1047 notes->hit_cycles += ch->cycles; in annotation__count_and_fill()
1048 notes->hit_insn += n_insn * ch->num; in annotation__count_and_fill()
1068 struct cyc_hist *ch; in annotation__compute_ipc() local
1070 ch = ¬es->src->cycles_hist[offset]; in annotation__compute_ipc()
1071 if (ch && ch->cycles) { in annotation__compute_ipc()
1074 if (ch->have_start) in annotation__compute_ipc()
1075 annotation__count_and_fill(notes, ch->start, offset, ch); in annotation__compute_ipc()
1077 if (al && ch->num_aggr) { in annotation__compute_ipc()
1078 al->cycles = ch->cycles_aggr / ch->num_aggr; in annotation__compute_ipc()
1079 al->cycles_max = ch->cycles_max; in annotation__compute_ipc()
1080 al->cycles_min = ch->cycles_min; in annotation__compute_ipc()