[PATCH][AArch64] Add aes and sha reservations for Thunderx2t99
Thu Mar 9 10:30:00 GMT 2017
On Thu, Mar 09, 2017 at 10:01:57AM +0000, Kyrill Tkachov wrote:
> On 08/03/17 17:39, James Greenhalgh wrote:
> >On Mon, Mar 06, 2017 at 05:09:58AM +0000, Hurugalawadi, Naveen wrote:
> >>Please find attached the patch that adds aes and sha reservations for
> >>Bootstrapped and Regression tested on aarch64-thunder-linux.
> >>Please review the patch and let us know if its okay for Stage-1?
> >>2017-03-06 Julian Brown <email@example.com>
> >> Naveen H.S <Naveen.Hurugalawadi@cavium.com>
> >> * config/aarch64/thunderx2t99.md (thunderx2t99_crc): New Reservation.
> >>diff --git a/gcc/config/aarch64/thunderx2t99.md b/gcc/config/aarch64/thunderx2t99.md
> >>index f807547..2eb136b 100644
> >>--- a/gcc/config/aarch64/thunderx2t99.md
> >>+++ b/gcc/config/aarch64/thunderx2t99.md
> >>@@ -443,7 +443,22 @@
> >> (eq_attr "type" "neon_store2_one_lane,neon_store2_one_lane_q"))
> >> "thunderx2t99_ls01,thunderx2t99_f01")
> >>+;; Crypto extensions.
> >>+; FIXME: Forwarding path for aese/aesmc or aesd/aesimc pairs?
> >Do you need these if you've enabled instruction fusion?
> I'd recommend it if one wants to bring the pairs together.
> >I'm not sure on the exact mechanics of how instruction fusion works, and
> >whether you'd get further scheduling benefits from modeling a forwarding
> >path if one exists.
> The (macro) fusion mechanism in the scheduler makes sure to keep
> the pairs together if they appear together before scheduling, but doesn't
> do anything to actually bring them together if they are far apart.
> So having bypasses would encourage the scheduler to form pairs more
Thanks for the explanation, that is useful to know.
More information about the Gcc-patches