]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gas/testsuite/gas/aarch64/rdma.s
Update year range in copyright notice of binutils files
[thirdparty/binutils-gdb.git] / gas / testsuite / gas / aarch64 / rdma.s
CommitLineData
9e1f0fa7
MW
1/* rdma.s Test file for AArch64 v8.1 Advanced-SIMD instructions.
2
250d07de 3 Copyright (C) 2012-2021 Free Software Foundation, Inc. Contributed by ARM Ltd.
9e1f0fa7
MW
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
23 .ifdef DIRECTIVE
24 .arch_extension rdma
25 .endif
26
10bba94b
TC
27 /* irp seems broken, so get creative. */
28 .macro vect_inst I, T
29 .irp x, 0.\T, 3.\T, 13.\T, 23.\T, 29.\T
30 .irp y, 1.\T, 4.\T, 14.\T, 24.\T, 30.\T
31 .irp z, 2.\T, 5.\T, 15.\T, 25.\T, 31.\T
32 \I v\x, v\y, v\z
33 .endr
34 .endr
35 .endr
9e1f0fa7
MW
36 .endm
37
38 .text
39 .irp inst, sqrdmlah, sqrdmlsh
40 .irp type, 4h, 8h, 2s, 4s
41 vect_inst \inst \type
42 .endr
43 .endr
44
45 .macro scalar_inst I R
46 \I \R\()0, \R\()1, \R\()2
47 .endm
48
49 .text
50 .irp inst, sqrdmlah, sqrdmlsh
51 .irp reg, s,h
52 scalar_inst \inst \reg
53 .endr
54 .endr
10bba94b 55
9e1f0fa7 56 .macro vect_indexed_inst I S T N
10bba94b
TC
57 .irp x, 0.\S\T, 3.\S\T, 13.\S\T, 23.\S\T, 29.\S\T
58 .irp y, 1.\S\T, 4.\S\T, 14.\S\T, 24.\S\T, 30.\S\T
59 .irp z, 0.\T[\N], 5.\T[\N], 10.\T[\N], 13.\T[\N], 15.\T[\N]
60 \I v\x, v\y, v\z
61 .endr
62 .endr
63 .endr
9e1f0fa7
MW
64 .endm
65
66 .text
67 .irp inst, sqrdmlah, sqrdmlsh
68 .irp size, 4, 8
69 .irp index 0,1,2,3
70 vect_indexed_inst \inst \size h \index
71 .endr
72 .endr
73 .irp size, 2, 4
74 .irp index 0,1,2,3
75 vect_indexed_inst \inst \size s \index
76 .endr
77 .endr
78 .endr
10bba94b 79
9e1f0fa7
MW
80 .macro scalar_indexed_inst I T N
81 \I \T\()0, \T\()1, v2.\T[\N]
82 .endm
83
84 .text
85 .irp inst, sqrdmlah, sqrdmlsh
86 .irp type h,s
87 .irp index 0,1,2,3
88 scalar_indexed_inst \inst \type \index
89 .endr
90 .endr
91 .endr