[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 14:02:01 PST 2017


evandro added a comment.

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

> In https://reviews.llvm.org/D28491#643283, @evandro wrote:
>
> > 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.
>
>
> Well if there is no reason to ever break the instructions apart, then using a Pseudo instruction and expanding that later may be the easier solution, is that the case for the AES instructions?


No, since they are pretty opaque.  But the pseudo `MOVaddr` is expanded into the pair `ADRP/ADD` only after the RA.  On A57, it's important to schedule them back to back, e.g., by running the `MISched` after the RA instead of before.


Repository:
  rL LLVM

https://reviews.llvm.org/D28491





More information about the llvm-commits mailing list