Create a DAG mutation that fuses instruction pairs matching the given predicates.
Synopsis
Declared in <llvm/CodeGen/MacroFusion.h>
std::unique_ptr<ScheduleDAGMutation>
createMacroFusionDAGMutation(
ArrayRef<MacroFusionPredTy> Predicates,
bool BranchOnly = false);
Description
Create a DAG scheduling mutation to pair instructions back to back for instructions that benefit according to the target‐specific predicate functions. shouldScheduleAdjacent will be true if any of the provided predicates are true. If BranchOnly is true, only branch instructions with one of their predecessors will be fused.
Return Value
A new ScheduleDAGMutation, or null if macro fusion is disabled.
Parameters
Name |
Description |
Predicates |
Target‐specific predicates that decide which instruction pairs should be fused. |
BranchOnly |
If true, only fuse a branch with one of its predecessors. |
Created with MrDocs