[all-commits] [llvm/llvm-project] b2bec7: [AsmPrinter] Add per BB instruction mix remark.
Florian Hahn via All-commits
all-commits at lists.llvm.org
Mon Oct 26 02:26:34 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: b2bec7cece9bb7d17799ac0af65a770cab4397ee
https://github.com/llvm/llvm-project/commit/b2bec7cece9bb7d17799ac0af65a770cab4397ee
Author: Florian Hahn <flo at fhahn.com>
Date: 2020-10-26 (Mon, 26 Oct 2020)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
A llvm/test/CodeGen/AArch64/arm64-instruction-mix-remarks.ll
Log Message:
-----------
[AsmPrinter] Add per BB instruction mix remark.
This patch adds a remarks that provides counts for each opcode per basic block.
An snippet of the generated information can be seen below.
The current implementation uses the target specific opcode for the counts. For example, on AArch64 this means we currently get 2 entries for `add` instructions if the block contains 32 and 64 bit adds. Similarly, immediate version are treated differently.
Unfortunately there seems to be no convenient way to get only the mnemonic part of the instruction as a string AFAIK. This could be improved in the future.
```
--- !Analysis
Pass: asm-printer
Name: InstructionMix
DebugLoc: { File: arm64-instruction-mix-remarks.ll, Line: 30, Column: 30 }
Function: foo
Args:
- String: 'BasicBlock: '
- BasicBlock: else
- String: "\n"
- String: INST_MADDWrrr
- String: ': '
- INST_MADDWrrr: '2'
- String: "\n"
- String: INST_MOVZWi
- String: ': '
- INST_MOVZWi: '1'
```
Reviewed By: anemet, thegameg, paquette
Differential Revision: https://reviews.llvm.org/D89892
More information about the All-commits
mailing list