[PATCH] D28491: [AArch64] Add new subtarget feature to fuse AES crypto operations

Evandro Menezes via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 11 13:49:14 PST 2017


evandro added a comment.

In https://reviews.llvm.org/D28491#643259, @MatzeB wrote:

> In https://reviews.llvm.org/D28491#643256, @evandro wrote:
>
> > The `MacroFusion` pass is currently being added before the RA runs.  However, since the `AArch64ExpandPseudo` pass is run after the RA (in `AArch64PassConfig::addPreSched2()`), I wonder if it'd make more sense to run the `MISched` after the RA as well, and not before as it is now.  Thoughts?
>
>
> There are a number of benefits when running the scheduler before register allocation (for example we can still reduce register pressure). We already have the PostMachineScheduler for scheduling again after regalloc (it's based on the same MISched framework but added considerably later in the pipeline; see also TargetSubtargetInfo::enablePostRAScheduler()).


I'm asking this because, looking further at other pairs of instrs that A57 fuses, such as `ADRP/ADD`, they only appear in the instr stream after pseudo expansion.


Repository:
  rL LLVM

https://reviews.llvm.org/D28491





More information about the llvm-commits mailing list