Hi,
Please find attached the patch that adds aes and sha reservations for
Thunderx2t99.
Bootstrapped and Regression tested on aarch64-thunder-linux.
Please review the patch and let us know if its okay for Stage-1?
Thanks,
Naveen
2017-03-06 Julian Brown <jul...@codesourcery.com>
Naveen H.S <naveen.hurugalaw...@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?
+
+(define_insn_reservation "thunderx2t99_aes" 5
+ (and (eq_attr "tune" "thunderx2t99")
+ (eq_attr "type" "crypto_aese,crypto_aesmc"))
+ "thunderx2t99_f1")
+
(define_insn_reservation "thunderx2t99_pmull" 5
(and (eq_attr "tune" "thunderx2t99")
(eq_attr "type" "crypto_pmull"))
"thunderx2t99_f1")
+
+(define_insn_reservation "thunderx2t99_sha" 7
+ (and (eq_attr "tune" "thunderx2t99")
+ (eq_attr "type" "crypto_sha1_fast,crypto_sha1_xor,crypto_sha1_slow,\
+ crypto_sha256_fast,crypto_sha256_slow"))
+ "thunderx2t99_f1")