About
Many RISC-V processors support "Instruction Fusion" or "Macro-op Fusion" to improve performance. The basic idea is certain instructions often show up together in a particular order to implement certain idioms. For example lui+addi for constant synthesis. Under the right conditions the processor can "fuse" the two instructions together to reduce the latency of the second instruction, reduce internal processor resources, etc.
Fusion typically requires the instructions to be consecutive in the instruction stream. The goal of this project is to define, in a relatively generic way, a method to describe what fusions a particular micro-architecture supports and provide mechanisms to keep those instructions consecutive in the instruction stream.
It is expected that a typical set of supported fusions can reduce the operation count within the processor's execution units by 1-2%.
Dependencies
Status
Updates
- Project reported as priority for 2H23