Hi,

The attached patch adds crypto types for instruction classificiation.

Tested on aarch64-none-elf. OK for trunk?

Thanks,
Tejas

2013-12-06  Tejas Belagod  <tejas.bela...@arm.com>

        * config/arm/types.md (neon_mul_d_long, crypto_aes, crypto_sha1_xor,
        crypto_sha1_fast, crypto_sha1_slow, crypto_sha256_fast,
        crypto_sha256_slow): New.
diff --git a/gcc/config/arm/types.md b/gcc/config/arm/types.md
index 1c4b9e3..81ca62d 100644
--- a/gcc/config/arm/types.md
+++ b/gcc/config/arm/types.md
@@ -326,6 +326,7 @@
 ; neon_mul_b_long
 ; neon_mul_h_long
 ; neon_mul_s_long
+; neon_mul_d_long
 ; neon_mul_h_scalar
 ; neon_mul_h_scalar_q
 ; neon_mul_s_scalar
@@ -519,6 +520,15 @@
 ; neon_fp_div_s_q
 ; neon_fp_div_d
 ; neon_fp_div_d_q
+;
+; The classification below is for Crypto instructions.
+;
+; crypto_aes
+; crypto_sha1_xor
+; crypto_sha1_fast
+; crypto_sha1_slow
+; crypto_sha256_fast
+; crypto_sha256_slow
 
 (define_attr "type"
  "adc_imm,\
@@ -821,6 +831,7 @@
   neon_mul_b_long,\
   neon_mul_h_long,\
   neon_mul_s_long,\
+  neon_mul_d_long,\
   neon_mul_h_scalar,\
   neon_mul_h_scalar_q,\
   neon_mul_s_scalar,\
@@ -1035,7 +1046,14 @@
   neon_fp_div_s,\
   neon_fp_div_s_q,\
   neon_fp_div_d,\
-  neon_fp_div_d_q"
+  neon_fp_div_d_q,\
+\
+  crypto_aes,\
+  crypto_sha1_xor,\
+  crypto_sha1_fast,\
+  crypto_sha1_slow,\
+  crypto_sha256_fast,\
+  crypto_sha256_slow"
    (const_string "untyped"))
 
 ; Is this an (integer side) multiply with a 32-bit (or smaller) result?

Reply via email to