[PATCH] D70777: AArch64: use some crypto instructions during CodeGen
Florian Hahn via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 28 04:14:46 PST 2019
fhahn added reviewers: kristof.beyls, samparker, evandro, efriedma.
fhahn accepted this revision.
fhahn added a comment.
This revision is now accepted and ready to land.
In D70777#1762657 <https://reviews.llvm.org/D70777#1762657>, @t.p.northover wrote:
> In this case, on our CPUs it looks like there's no difference between how an these instructions and a single eor execute in either latency or pipelines. Since the final operation in all of these patterns is an eor anyway, I think that means the it's not a worry.
Right, IIUC assuming the cost of BCAX/ EOR3 is the same as the cost of any of the source instructions in the pattern (or, xor, and, not), then it should be always profitable. I could not find the cost of BCAX/EOR for the Cortex-A75 (the latest public software optimization guide I have), but it would be good to have people check this for other CPUs.
Adding a few additional people to give them a chance to double-check if that assumption holds for various CPUs.
LGTM, unless there are in concerns for other CPUs in the next few days (probably good to wait until mid next week, with Thanksgiving).
Also, it would be great to add a few test cases with multiple users (and a comment why the generated code is fine), to make clear we considered those cases.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D70777/new/
https://reviews.llvm.org/D70777
More information about the llvm-commits
mailing list