0b83be906c
We add two things: * --print_instruction_stats makes compiler dump per IL instruction size breakdown (how many bytes of code were produced from specific instruction kinds). This was largely implemented by kustermann@ in https://codereview.chromium.org/2584613002/ and this CL does only few changes to the original implementation, namely more uniform handling of slow-path code and puts statistics object into RawInstructions (which has free space due to alignment) instead of RawCode. * --print_instructions_sizes_to=symbols.json makes compiler dump per Instruction object size breakdown into a JSON file. This JSON file can later be processed with pkg/vm/tool/run_binary_size_analysis.dart script to produce interactive binary size diagram similar to runtime/third_party/binary_size tool. Change-Id: Ied4965b9a0a91b3025eefbe981ecd47cdcf782d6 Reviewed-on: https://dart-review.googlesource.com/50501 Commit-Queue: Vyacheslav Egorov <vegorov@google.com> Reviewed-by: Alexander Markov <alexmarkov@google.com> Reviewed-by: Martin Kustermann <kustermann@google.com>