On Tue, Aug 13, 2019 at 03:30:37PM +0800, Jin Yao wrote:

SNIP

>  static void
>  hpp__entry_unpair(struct hist_entry *he, int idx, char *buf, size_t size)
>  {
> @@ -1662,6 +1794,10 @@ static void data__hpp_register(struct data__file *d, 
> int idx)
>               fmt->color = hpp__color_cycles;
>               fmt->sort  = hist_entry__cmp_nop;
>               break;
> +     case PERF_HPP_DIFF__CYCLES_HIST:
> +             fmt->color = hpp__color_cycles_hist;
> +             fmt->sort  = hist_entry__cmp_nop;
> +             break;
>       default:
>               fmt->sort  = hist_entry__cmp_nop;
>               break;
> @@ -1688,8 +1824,15 @@ static int ui_init(void)
>                *   PERF_HPP_DIFF__RATIO
>                *   PERF_HPP_DIFF__WEIGHTED_DIFF
>                */
> -             data__hpp_register(d, i ? compute_2_hpp[compute] :
> -                                       PERF_HPP_DIFF__BASELINE);
> +             if (cycles_hist && (compute == COMPUTE_CYCLES)) {
> +                     data__hpp_register(d, i ? PERF_HPP_DIFF__CYCLES :
> +                                               PERF_HPP_DIFF__BASELINE);
> +                     data__hpp_register(d, i ? PERF_HPP_DIFF__CYCLES_HIST :
> +                                               PERF_HPP_DIFF__BASELINE);
> +             } else {
> +                     data__hpp_register(d, i ? compute_2_hpp[compute] :
> +                                               PERF_HPP_DIFF__BASELINE);
> +             }

I tink that something like this might be less confusing instead of above:

                if (cycles_hist && i && (compute == COMPUTE_CYCLES)) 
                        data__hpp_register(d, PERF_HPP_DIFF__CYCLES);

other than that the patch looks ok to me

jirka

Reply via email to