This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch, AArch64] [2/6] Implement support for Crypto -- Instruction types.


On Fri, Dec 6, 2013 at 5:35 PM, Tejas Belagod <tbelagod@arm.com> wrote:
>
> Hi,
>
> The attached patch adds crypto types for instruction classificiation.
>
> Tested on aarch64-none-elf. OK for trunk?

Ok but please work with Kyryll to make sure only one version of this
gets in, obviously.

Ramana

>
> Thanks,
> Tejas
>
> 2013-12-06  Tejas Belagod  <tejas.belagod@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?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]