toolchain-utils: Refine heat map tool for Chrome

This CL changes original heat_map.py, which works as a wrapper to
perf-to-inst-page.sh. The new workflow works as following:
heat_map.py still works as the wrapper.
It instantiates an object of HeatmapGenerator in
heatmap_generator.py and calls functions in it.

HeatmapGenerator is the class to generate heatmaps, which replaces
some functionalities in old perf-to-inst-page.sh. It also adds
functionality to print out symbols in hot pages in the heatmaps.

perf-to-inst-page.sh will be triggered in functions in
HeatmapGenerator. It now only serves the purpose of calling gnu plot
to actually generate PNGs for heat maps.

Change-Id: I83958e3886aca3260fdef69557f341a5f6472555
Reviewed-on: https://chromium-review.googlesource.com/1380955
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Tiancong Wang <tcwang@google.com>
Reviewed-by: George Burgess <gbiv@chromium.org>
4 files changed