]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gas/testsuite/gas/aarch64/rdma.s
[AArch64] Support for ARMv8.1a Adv.SIMD instructions
[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
3 Copyright (C) 2012-2015 Free Software Foundation, Inc. Contributed by ARM Ltd.
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
27 .macro vect_inst I T
28 \I v0.\()\T, v1.\()\T, v2.\()\T
29 .endm
30
31 .text
32 .irp inst, sqrdmlah, sqrdmlsh
33 .irp type, 4h, 8h, 2s, 4s
34 vect_inst \inst \type
35 .endr
36 .endr
37
38 .macro scalar_inst I R
39 \I \R\()0, \R\()1, \R\()2
40 .endm
41
42 .text
43 .irp inst, sqrdmlah, sqrdmlsh
44 .irp reg, s,h
45 scalar_inst \inst \reg
46 .endr
47 .endr
48
49 .macro vect_indexed_inst I S T N
50 \I v0.\S\T, v1.\S\T, v2.\T[\N]
51 .endm
52
53 .text
54 .irp inst, sqrdmlah, sqrdmlsh
55 .irp size, 4, 8
56 .irp index 0,1,2,3
57 vect_indexed_inst \inst \size h \index
58 .endr
59 .endr
60 .irp size, 2, 4
61 .irp index 0,1,2,3
62 vect_indexed_inst \inst \size s \index
63 .endr
64 .endr
65 .endr
66
67 .macro scalar_indexed_inst I T N
68 \I \T\()0, \T\()1, v2.\T[\N]
69 .endm
70
71 .text
72 .irp inst, sqrdmlah, sqrdmlsh
73 .irp type h,s
74 .irp index 0,1,2,3
75 scalar_indexed_inst \inst \type \index
76 .endr
77 .endr
78 .endr