]>
Commit | Line | Data |
---|---|---|
a06ea964 NC |
1 | /* crypto.s Test file for AArch64 Advanced-SIMD Crypto instructions. |
2 | ||
250d07de | 3 | Copyright (C) 2012-2021 Free Software Foundation, Inc. Contributed by ARM Ltd. |
a06ea964 NC |
4 | |
5 | This file is part of GAS. | |
6 | ||
7 | GAS is free software; you can redistribute it and/or modify | |
8 | it under the terms of the GNU General Public License as published by | |
9 | the Free Software Foundation; either version 3 of the license, or | |
10 | (at your option) any later version. | |
11 | ||
12 | GAS is distributed in the hope that it will be useful, | |
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | GNU General Public License for more details. | |
16 | ||
17 | You should have received a copy of the GNU General Public License | |
18 | along with this program; see the file COPYING3. If not, | |
19 | see <http://www.gnu.org/licenses/>. */ | |
20 | ||
21 | ||
22 | .text | |
ae527cd8 | 23 | .ifdef DIRECTIVE |
d4340f89 JB |
24 | .if DIRECTIVE > 1 |
25 | .arch_extension aes | |
26 | .arch_extension sha2 | |
27 | .else | |
ae527cd8 JB |
28 | .arch_extension crypto |
29 | .endif | |
d4340f89 JB |
30 | .if DIRECTIVE == 3 |
31 | .arch_extension nosha3 | |
32 | .endif | |
33 | .endif | |
ae527cd8 | 34 | |
a06ea964 NC |
35 | aese v7.16b, v31.16b |
36 | aesd v7.16b, v31.16b | |
37 | aesmc v7.16b, v31.16b | |
38 | aesimc v7.16b, v31.16b | |
39 | ||
40 | sha1h s7, s31 | |
41 | sha1su1 v7.4s, v31.4s | |
42 | sha256su0 v7.4s, v31.4s | |
43 | ||
44 | sha1c q7, s15, v31.4s | |
45 | sha1p q7, s15, v31.4s | |
46 | sha1m q7, s15, v31.4s | |
47 | ||
48 | sha1su0 v7.4s, v15.4s, v31.4s | |
49 | sha256h q7, q15, v31.4s | |
50 | sha256h2 q7, q15, v31.4s | |
51 | sha256su1 v7.4s, v15.4s, v31.4s | |
52 | ||
53 | pmull v7.8h, v15.8b, v31.8b | |
54 | pmull v7.1q, v15.1d, v31.1d | |
55 | pmull2 v7.8h, v15.16b, v31.16b | |
56 | pmull2 v7.1q, v15.2d, v31.2d | |
ae527cd8 JB |
57 | |
58 | .arch_extension nocrypto |