]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/testsuite/gdb.arch/powerpc-power10.exp
Update copyright year range in header of all files managed by GDB
[thirdparty/binutils-gdb.git] / gdb / testsuite / gdb.arch / powerpc-power10.exp
CommitLineData
213516ef 1# Copyright 2021-2023 Free Software Foundation, Inc.
82d9b280
WS
2
3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by
5# the Free Software Foundation; either version 3 of the License, or
6# (at your option) any later version.
7#
8# This program is distributed in the hope that it will be useful,
9# but WITHOUT ANY WARRANTY; without even the implied warranty of
10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11# GNU General Public License for more details.
12#
13# You should have received a copy of the GNU General Public License
14# along with this program. If not, see <http://www.gnu.org/licenses/>.
15
16# This file is part of the gdb testsuite.
17
18# Test PowerPC instructions disassembly of power10 instructions.
19
20standard_testfile .s
21set objfile [standard_output_file ${testfile}.o]
22
75b6f386 23if {![istarget "powerpc*-*-*"]} {
82d9b280
WS
24 verbose "Skipping PowerPC instructions disassembly."
25 return
26}
27
28if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${objfile}" object {debug}] != "" } {
29 untested "PowerPC instructions disassembly"
30 return -1
31}
32
33clean_restart ${objfile}
34
35# Disassemble the function.
36set func ""
37
38gdb_test "set disassembler-options power10"
39set test "disass func"
40gdb_test_multiple $test $test {
41 -re "\r\nDump of assembler code for function func:(\r\n.*\r\n)End of assembler dump.\r\n$gdb_prompt $" {
42 set func $expect_out(1,string)
43 pass $test
44 }
45}
46
47proc instr_to_patt {instr} {
48 global decimal hex
49 # 0x0000000000000018 <+24>: stxvd2x vs43,r4,r5
50 return "\[ \t\]*$hex <\\+$decimal>:\[ \t\]*[string_to_regexp $instr]"
51}
52
53proc func_check {instr} {
54 global func
55
56 set test "found: $instr"
57 if [regexp -nocase -line [instr_to_patt $instr] $func] {
58 pass $test
59 } else {
60 fail $test
61 }
62}
63
64func_check "brd r0,r1"
65func_check "brh r0,r1"
66func_check "brw r0,r1"
67func_check "cfuged r0,r1,r2"
68func_check "cntlzdm r0,r1,r2"
69func_check "cnttzdm r0,r1,r2"
70func_check "dcffixqq f28,v0"
71func_check "dctfixqq v0,f26"
72func_check "lxvkq vs0,1"
73func_check "lxvkq vs0,16"
74func_check "lxvkq vs0,17"
75func_check "lxvkq vs0,18"
76func_check "lxvkq vs0,19"
77func_check "lxvkq vs0,2"
78func_check "lxvkq vs0,20"
79func_check "lxvkq vs0,21"
80func_check "lxvkq vs0,22"
81func_check "lxvkq vs0,23"
82func_check "lxvkq vs0,24"
83func_check "lxvkq vs0,3"
84func_check "lxvkq vs0,4"
85func_check "lxvkq vs0,5"
86func_check "lxvkq vs0,6"
87func_check "lxvkq vs0,7"
88func_check "lxvkq vs0,8"
89func_check "lxvkq vs0,9"
90func_check "lxvp vs20,0(0)"
91func_check "lxvp vs20,16(0)"
92func_check "lxvp vs20,32(0)"
93func_check "lxvpx vs20,0,r1"
94func_check "lxvrbx vs0,r1,r2"
95func_check "lxvrdx vs0,r1,r2"
96func_check "lxvrhx vs0,r1,r2"
97func_check "lxvrwx vs0,r1,r2"
98func_check "mfvsrld r0,vs26"
99func_check "mfvsrld r0,vs27"
100func_check "mfvsrld r0,vs28"
101func_check "mfvsrld r0,vs29"
102func_check "mffprd r0,f26"
103func_check "mffprd r0,f27"
104func_check "mffprd r0,f28"
105func_check "mffprd r0,f29"
106func_check "mtvsrbm v0,r1"
107func_check "mtvsrbmi v0,0"
108func_check "mtvsrbmi v0,3"
109func_check "mtvsrbmi v0,7"
110func_check "mtvsrdm v0,r1"
111func_check "mtvsrhm v0,r1"
112func_check "mtvsrqm v0,r1"
113func_check "mtvsrwm v0,r1"
114func_check "paddi r0,r1,0"
115func_check "paddi r0,r1,12"
116func_check "paddi r0,r1,48"
117func_check "paddi r0,r1,98"
118func_check "pdepd r0,r1,r2"
119func_check "pextd r0,r1,r2"
120func_check "plbz r0,0(r1)"
121func_check "plbz r0,16(r1)"
122func_check "plbz r0,32(r1)"
123func_check "plbz r0,64(r1)"
124func_check "plbz r0,8(r1)"
125func_check "pld r0,0(r1)"
126func_check "pld r0,16(r1)"
127func_check "pld r0,32(r1)"
128func_check "pld r0,64(r1)"
129func_check "pld r0,8(r1)"
130func_check "plfd f28,0(0)"
131func_check "plfd f28,16(0)"
132func_check "plfd f28,32(0)"
133func_check "plfd f28,4(0)"
134func_check "plfd f28,64(0)"
135func_check "plfd f28,8(0)"
136func_check "plfs f28,0(0)"
137func_check "plfs f28,16(0)"
138func_check "plfs f28,32(0)"
139func_check "plfs f28,4(0)"
140func_check "plfs f28,64(0)"
141func_check "plfs f28,8(0)"
142func_check "plha r0,0(r1)"
143func_check "plha r0,16(r1)"
144func_check "plha r0,32(r1)"
145func_check "plha r0,64(r1)"
146func_check "plha r0,8(r1)"
147func_check "plhz r0,0(r1)"
148func_check "plhz r0,16(r1)"
149func_check "plhz r0,32(r1)"
150func_check "plhz r0,64(r1)"
151func_check "plhz r0,8(r1)"
152func_check "plq r26,0(0)"
153func_check "plq r26,16(0)"
154func_check "plq r26,32(0)"
155func_check "plq r26,48(0)"
156func_check "plq r26,64(0)"
157func_check "plq r26,8(0)"
158func_check "plwa r0,0(r1)"
159func_check "plwa r0,16(r1)"
160func_check "plwa r0,32(r1)"
161func_check "plwa r0,64(r1)"
162func_check "plwa r0,8(r1)"
163func_check "plwz r0,0(r1)"
164func_check "plwz r0,16(r1)"
165func_check "plwz r0,32(r1)"
166func_check "plwz r0,64(r1)"
167func_check "plwz r0,8(r1)"
168func_check "plxsd v0,0(r1)"
169func_check "plxsd v0,16(r1)"
170func_check "plxsd v0,32(r1)"
171func_check "plxsd v0,4(r1)"
172func_check "plxsd v0,64(r1)"
173func_check "plxsd v0,8(r1)"
174func_check "plxssp v0,0(r1)"
175func_check "plxssp v0,16(r1)"
176func_check "plxssp v0,32(r1)"
177func_check "plxssp v0,4(r1)"
178func_check "plxssp v0,64(r1)"
179func_check "plxssp v0,8(r1)"
180func_check "plxv vs0,0(r1)"
181func_check "plxv vs0,16(r1)"
182func_check "plxv vs0,4(r1)"
183func_check "plxv vs0,8(r1)"
184func_check "plxvp vs20,0(0)"
185func_check "plxvp vs20,16(0)"
186func_check "plxvp vs20,24(0)"
187func_check "plxvp vs20,32(0)"
188func_check "plxvp vs20,8(0)"
49977100
CL
189func_check "pmdmxvbf16ger2 a4,vs0,vs1,0,0,0"
190func_check "pmdmxvbf16ger2 a4,vs0,vs1,0,0,1"
191func_check "pmdmxvbf16ger2 a4,vs0,vs1,0,13,0"
192func_check "pmdmxvbf16ger2 a4,vs0,vs1,0,13,1"
193func_check "pmdmxvbf16ger2 a4,vs0,vs1,11,0,0"
194func_check "pmdmxvbf16ger2 a4,vs0,vs1,11,0,1"
195func_check "pmdmxvbf16ger2 a4,vs0,vs1,11,13,0"
196func_check "pmdmxvbf16ger2 a4,vs0,vs1,11,13,1"
197func_check "pmdmxvbf16ger2nn a4,vs0,vs1,0,0,0"
198func_check "pmdmxvbf16ger2nn a4,vs0,vs1,0,0,1"
199func_check "pmdmxvbf16ger2nn a4,vs0,vs1,0,13,0"
200func_check "pmdmxvbf16ger2nn a4,vs0,vs1,0,13,1"
201func_check "pmdmxvbf16ger2nn a4,vs0,vs1,11,0,0"
202func_check "pmdmxvbf16ger2nn a4,vs0,vs1,11,0,1"
203func_check "pmdmxvbf16ger2nn a4,vs0,vs1,11,13,0"
204func_check "pmdmxvbf16ger2nn a4,vs0,vs1,11,13,1"
205func_check "pmdmxvbf16ger2np a4,vs0,vs1,0,0,0"
206func_check "pmdmxvbf16ger2np a4,vs0,vs1,0,0,1"
207func_check "pmdmxvbf16ger2np a4,vs0,vs1,0,13,0"
208func_check "pmdmxvbf16ger2np a4,vs0,vs1,0,13,1"
209func_check "pmdmxvbf16ger2np a4,vs0,vs1,11,0,0"
210func_check "pmdmxvbf16ger2np a4,vs0,vs1,11,0,1"
211func_check "pmdmxvbf16ger2np a4,vs0,vs1,11,13,0"
212func_check "pmdmxvbf16ger2np a4,vs0,vs1,11,13,1"
213func_check "pmdmxvbf16ger2pn a4,vs0,vs1,0,0,0"
214func_check "pmdmxvbf16ger2pn a4,vs0,vs1,0,0,1"
215func_check "pmdmxvbf16ger2pn a4,vs0,vs1,0,13,0"
216func_check "pmdmxvbf16ger2pn a4,vs0,vs1,0,13,1"
217func_check "pmdmxvbf16ger2pn a4,vs0,vs1,11,0,0"
218func_check "pmdmxvbf16ger2pn a4,vs0,vs1,11,0,1"
219func_check "pmdmxvbf16ger2pn a4,vs0,vs1,11,13,0"
220func_check "pmdmxvbf16ger2pn a4,vs0,vs1,11,13,1"
221func_check "pmdmxvbf16ger2pp a4,vs0,vs1,0,0,0"
222func_check "pmdmxvbf16ger2pp a4,vs0,vs1,0,0,1"
223func_check "pmdmxvbf16ger2pp a4,vs0,vs1,0,13,0"
224func_check "pmdmxvbf16ger2pp a4,vs0,vs1,0,13,1"
225func_check "pmdmxvbf16ger2pp a4,vs0,vs1,11,0,0"
226func_check "pmdmxvbf16ger2pp a4,vs0,vs1,11,0,1"
227func_check "pmdmxvbf16ger2pp a4,vs0,vs1,11,13,0"
228func_check "pmdmxvbf16ger2pp a4,vs0,vs1,11,13,1"
229func_check "pmdmxvf16ger2 a4,vs0,vs1,0,0,0"
230func_check "pmdmxvf16ger2 a4,vs0,vs1,0,0,1"
231func_check "pmdmxvf16ger2 a4,vs0,vs1,0,13,0"
232func_check "pmdmxvf16ger2 a4,vs0,vs1,0,13,1"
233func_check "pmdmxvf16ger2 a4,vs0,vs1,11,0,0"
234func_check "pmdmxvf16ger2 a4,vs0,vs1,11,0,1"
235func_check "pmdmxvf16ger2 a4,vs0,vs1,11,13,0"
236func_check "pmdmxvf16ger2 a4,vs0,vs1,11,13,1"
237func_check "pmdmxvf16ger2nn a4,vs0,vs1,0,0,0"
238func_check "pmdmxvf16ger2nn a4,vs0,vs1,0,0,1"
239func_check "pmdmxvf16ger2nn a4,vs0,vs1,0,13,0"
240func_check "pmdmxvf16ger2nn a4,vs0,vs1,0,13,1"
241func_check "pmdmxvf16ger2nn a4,vs0,vs1,11,0,0"
242func_check "pmdmxvf16ger2nn a4,vs0,vs1,11,0,1"
243func_check "pmdmxvf16ger2nn a4,vs0,vs1,11,13,0"
244func_check "pmdmxvf16ger2nn a4,vs0,vs1,11,13,1"
245func_check "pmdmxvf16ger2np a4,vs0,vs1,0,0,0"
246func_check "pmdmxvf16ger2np a4,vs0,vs1,0,0,1"
247func_check "pmdmxvf16ger2np a4,vs0,vs1,0,13,0"
248func_check "pmdmxvf16ger2np a4,vs0,vs1,0,13,1"
249func_check "pmdmxvf16ger2np a4,vs0,vs1,11,0,0"
250func_check "pmdmxvf16ger2np a4,vs0,vs1,11,0,1"
251func_check "pmdmxvf16ger2np a4,vs0,vs1,11,13,0"
252func_check "pmdmxvf16ger2np a4,vs0,vs1,11,13,1"
253func_check "pmdmxvf16ger2pn a4,vs0,vs1,0,0,0"
254func_check "pmdmxvf16ger2pn a4,vs0,vs1,0,0,1"
255func_check "pmdmxvf16ger2pn a4,vs0,vs1,0,13,0"
256func_check "pmdmxvf16ger2pn a4,vs0,vs1,0,13,1"
257func_check "pmdmxvf16ger2pn a4,vs0,vs1,11,0,0"
258func_check "pmdmxvf16ger2pn a4,vs0,vs1,11,0,1"
259func_check "pmdmxvf16ger2pn a4,vs0,vs1,11,13,0"
260func_check "pmdmxvf16ger2pn a4,vs0,vs1,11,13,1"
261func_check "pmdmxvf16ger2pp a4,vs0,vs1,0,0,0"
262func_check "pmdmxvf16ger2pp a4,vs0,vs1,0,0,1"
263func_check "pmdmxvf16ger2pp a4,vs0,vs1,0,13,0"
264func_check "pmdmxvf16ger2pp a4,vs0,vs1,0,13,1"
265func_check "pmdmxvf16ger2pp a4,vs0,vs1,11,0,0"
266func_check "pmdmxvf16ger2pp a4,vs0,vs1,11,0,1"
267func_check "pmdmxvf16ger2pp a4,vs0,vs1,11,13,0"
268func_check "pmdmxvf16ger2pp a4,vs0,vs1,11,13,1"
269func_check "pmdmxvf32ger a4,vs0,vs1,0,0"
270func_check "pmdmxvf32ger a4,vs0,vs1,0,13"
271func_check "pmdmxvf32ger a4,vs0,vs1,11,0"
272func_check "pmdmxvf32ger a4,vs0,vs1,11,13"
273func_check "pmdmxvf32gernn a4,vs0,vs1,0,0"
274func_check "pmdmxvf32gernn a4,vs0,vs1,0,13"
275func_check "pmdmxvf32gernn a4,vs0,vs1,11,0"
276func_check "pmdmxvf32gernn a4,vs0,vs1,11,13"
277func_check "pmdmxvf32gernp a4,vs0,vs1,0,0"
278func_check "pmdmxvf32gernp a4,vs0,vs1,0,13"
279func_check "pmdmxvf32gernp a4,vs0,vs1,11,0"
280func_check "pmdmxvf32gernp a4,vs0,vs1,11,13"
281func_check "pmdmxvf32gerpn a4,vs0,vs1,0,0"
282func_check "pmdmxvf32gerpn a4,vs0,vs1,0,13"
283func_check "pmdmxvf32gerpn a4,vs0,vs1,11,0"
284func_check "pmdmxvf32gerpn a4,vs0,vs1,11,13"
285func_check "pmdmxvf32gerpp a4,vs0,vs1,0,0"
286func_check "pmdmxvf32gerpp a4,vs0,vs1,0,13"
287func_check "pmdmxvf32gerpp a4,vs0,vs1,11,0"
288func_check "pmdmxvf32gerpp a4,vs0,vs1,11,13"
289func_check "pmdmxvf64ger a4,vs22,vs0,0,0"
290func_check "pmdmxvf64ger a4,vs22,vs0,0,1"
291func_check "pmdmxvf64ger a4,vs22,vs0,11,0"
292func_check "pmdmxvf64ger a4,vs22,vs0,11,1"
293func_check "pmdmxvf64gernn a4,vs22,vs0,0,0"
294func_check "pmdmxvf64gernn a4,vs22,vs0,0,1"
295func_check "pmdmxvf64gernn a4,vs22,vs0,11,0"
296func_check "pmdmxvf64gernn a4,vs22,vs0,11,1"
297func_check "pmdmxvf64gernp a4,vs22,vs0,0,0"
298func_check "pmdmxvf64gernp a4,vs22,vs0,0,1"
299func_check "pmdmxvf64gernp a4,vs22,vs0,11,0"
300func_check "pmdmxvf64gernp a4,vs22,vs0,11,1"
301func_check "pmdmxvf64gerpn a4,vs22,vs0,0,0"
302func_check "pmdmxvf64gerpn a4,vs22,vs0,0,1"
303func_check "pmdmxvf64gerpn a4,vs22,vs0,11,0"
304func_check "pmdmxvf64gerpn a4,vs22,vs0,11,1"
305func_check "pmdmxvf64gerpp a4,vs22,vs0,0,0"
306func_check "pmdmxvf64gerpp a4,vs22,vs0,0,1"
307func_check "pmdmxvf64gerpp a4,vs22,vs0,11,0"
308func_check "pmdmxvf64gerpp a4,vs22,vs0,11,1"
309func_check "pmdmxvi16ger2 a4,vs0,vs1,0,0,0"
310func_check "pmdmxvi16ger2 a4,vs0,vs1,0,0,1"
311func_check "pmdmxvi16ger2 a4,vs0,vs1,0,13,0"
312func_check "pmdmxvi16ger2 a4,vs0,vs1,0,13,1"
313func_check "pmdmxvi16ger2 a4,vs0,vs1,11,0,0"
314func_check "pmdmxvi16ger2 a4,vs0,vs1,11,0,1"
315func_check "pmdmxvi16ger2 a4,vs0,vs1,11,13,0"
316func_check "pmdmxvi16ger2 a4,vs0,vs1,11,13,1"
317func_check "pmdmxvi16ger2pp a4,vs0,vs1,0,0,0"
318func_check "pmdmxvi16ger2pp a4,vs0,vs1,0,0,1"
319func_check "pmdmxvi16ger2pp a4,vs0,vs1,0,13,0"
320func_check "pmdmxvi16ger2pp a4,vs0,vs1,0,13,1"
321func_check "pmdmxvi16ger2pp a4,vs0,vs1,11,0,0"
322func_check "pmdmxvi16ger2pp a4,vs0,vs1,11,0,1"
323func_check "pmdmxvi16ger2pp a4,vs0,vs1,11,13,0"
324func_check "pmdmxvi16ger2pp a4,vs0,vs1,11,13,1"
325func_check "pmdmxvi16ger2s a4,vs0,vs1,0,0,0"
326func_check "pmdmxvi16ger2s a4,vs0,vs1,0,0,1"
327func_check "pmdmxvi16ger2s a4,vs0,vs1,0,13,0"
328func_check "pmdmxvi16ger2s a4,vs0,vs1,0,13,1"
329func_check "pmdmxvi16ger2s a4,vs0,vs1,11,0,0"
330func_check "pmdmxvi16ger2s a4,vs0,vs1,11,0,1"
331func_check "pmdmxvi16ger2s a4,vs0,vs1,11,13,0"
332func_check "pmdmxvi16ger2s a4,vs0,vs1,11,13,1"
333func_check "pmdmxvi16ger2spp a4,vs0,vs1,0,0,0"
334func_check "pmdmxvi16ger2spp a4,vs0,vs1,0,0,1"
335func_check "pmdmxvi16ger2spp a4,vs0,vs1,0,13,0"
336func_check "pmdmxvi16ger2spp a4,vs0,vs1,0,13,1"
337func_check "pmdmxvi16ger2spp a4,vs0,vs1,11,0,0"
338func_check "pmdmxvi16ger2spp a4,vs0,vs1,11,0,1"
339func_check "pmdmxvi16ger2spp a4,vs0,vs1,11,13,0"
340func_check "pmdmxvi16ger2spp a4,vs0,vs1,11,13,1"
341func_check "pmdmxvi4ger8 a4,vs0,vs1,0,0,0"
342func_check "pmdmxvi4ger8 a4,vs0,vs1,0,0,45"
343func_check "pmdmxvi4ger8 a4,vs0,vs1,0,1,0"
344func_check "pmdmxvi4ger8 a4,vs0,vs1,0,1,45"
345func_check "pmdmxvi4ger8 a4,vs0,vs1,11,0,0"
346func_check "pmdmxvi4ger8 a4,vs0,vs1,11,0,45"
347func_check "pmdmxvi4ger8 a4,vs0,vs1,11,1,0"
348func_check "pmdmxvi4ger8 a4,vs0,vs1,11,1,45"
349func_check "pmdmxvi4ger8pp a4,vs0,vs1,0,0,0"
350func_check "pmdmxvi4ger8pp a4,vs0,vs1,0,0,45"
351func_check "pmdmxvi4ger8pp a4,vs0,vs1,0,1,0"
352func_check "pmdmxvi4ger8pp a4,vs0,vs1,0,1,45"
353func_check "pmdmxvi4ger8pp a4,vs0,vs1,11,0,0"
354func_check "pmdmxvi4ger8pp a4,vs0,vs1,11,0,45"
355func_check "pmdmxvi4ger8pp a4,vs0,vs1,11,1,0"
356func_check "pmdmxvi4ger8pp a4,vs0,vs1,11,1,45"
357func_check "pmdmxvi8ger4 a4,vs0,vs1,0,0,0"
358func_check "pmdmxvi8ger4 a4,vs0,vs1,0,0,5"
359func_check "pmdmxvi8ger4 a4,vs0,vs1,0,13,0"
360func_check "pmdmxvi8ger4 a4,vs0,vs1,0,13,5"
361func_check "pmdmxvi8ger4 a4,vs0,vs1,11,0,0"
362func_check "pmdmxvi8ger4 a4,vs0,vs1,11,0,5"
363func_check "pmdmxvi8ger4 a4,vs0,vs1,11,13,0"
364func_check "pmdmxvi8ger4 a4,vs0,vs1,11,13,5"
365func_check "pmdmxvi8ger4pp a4,vs0,vs1,0,0,0"
366func_check "pmdmxvi8ger4pp a4,vs0,vs1,0,0,5"
367func_check "pmdmxvi8ger4pp a4,vs0,vs1,0,13,0"
368func_check "pmdmxvi8ger4pp a4,vs0,vs1,0,13,5"
369func_check "pmdmxvi8ger4pp a4,vs0,vs1,11,0,0"
370func_check "pmdmxvi8ger4pp a4,vs0,vs1,11,0,5"
371func_check "pmdmxvi8ger4pp a4,vs0,vs1,11,13,0"
372func_check "pmdmxvi8ger4pp a4,vs0,vs1,11,13,5"
373func_check "pmdmxvi8ger4spp a4,vs0,vs1,0,0,0"
374func_check "pmdmxvi8ger4spp a4,vs0,vs1,0,0,5"
375func_check "pmdmxvi8ger4spp a4,vs0,vs1,0,13,0"
376func_check "pmdmxvi8ger4spp a4,vs0,vs1,0,13,5"
377func_check "pmdmxvi8ger4spp a4,vs0,vs1,11,0,0"
378func_check "pmdmxvi8ger4spp a4,vs0,vs1,11,0,5"
379func_check "pmdmxvi8ger4spp a4,vs0,vs1,11,13,0"
380func_check "pmdmxvi8ger4spp a4,vs0,vs1,11,13,5"
82d9b280
WS
381#/* pstb extended mnemonics can suppress (r1) or the trailing ,0 or ,1, see ISA.
382func_check "pstb r0,0(r1)"
383func_check "pstb r0,16(r1)"
384func_check "pstb r0,32(r1)"
385func_check "pstb r0,8(r1)"
386func_check "pstd r0,0(r1)"
387func_check "pstd r0,16(r1)"
388func_check "pstd r0,32(r1)"
389func_check "pstd r0,8(r1)"
390func_check "pstfd f26,0(0)"
391func_check "pstfd f26,16(0)"
392func_check "pstfd f26,32(0)"
393func_check "pstfd f26,4(0)"
394func_check "pstfd f26,8(0)"
395func_check "pstfs f26,0(0)"
396func_check "pstfs f26,16(0)"
397func_check "pstfs f26,32(0)"
398func_check "pstfs f26,4(0)"
399func_check "pstfs f26,8(0)"
400func_check "psth r0,0(r1)"
401func_check "psth r0,16(r1)"
402func_check "psth r0,32(r1)"
403func_check "psth r0,8(r1)"
404func_check "pstq r24,0(0)"
405func_check "pstq r24,16(0)"
406func_check "pstq r24,32(0)"
407func_check "pstq r24,64(0)"
408func_check "pstq r24,8(0)"
409func_check "pstw r0,0(r1)"
410func_check "pstw r0,16(r1)"
411func_check "pstw r0,32(r1)"
412func_check "pstw r0,8(r1)"
413func_check "pstxsd v22,0(0)"
414func_check "pstxsd v22,16(0)"
415func_check "pstxsd v22,32(0)"
416func_check "pstxsd v22,4(0)"
417func_check "pstxsd v22,64(0)"
418func_check "pstxsd v22,8(0)"
419func_check "pstxssp v22,0(0)"
420func_check "pstxssp v22,16(0)"
421func_check "pstxssp v22,32(0)"
422func_check "pstxssp v22,4(0)"
423func_check "pstxssp v22,64(0)"
424func_check "pstxssp v22,8(0)"
425func_check "pstxv vs0,0(r1)"
426func_check "pstxv vs0,16(r1)"
427func_check "pstxv vs0,4(r1)"
428func_check "pstxv vs0,8(r1)"
429func_check "pstxvp vs20,0(0)"
430func_check "pstxvp vs20,16(0)"
431func_check "pstxvp vs20,32(0)"
432func_check "pstxvp vs20,48(0)"
433# lt,gt,eq,so map to cr0 0,1,2,3 ; cr1,cr2 extend from there. lt=0 ; gt=1 ; eq=2 ; so=3
434func_check "setbc r26,lt"
435func_check "setbc r26,gt"
436func_check "setbc r26,eq"
437func_check "setbc r26,so"
438func_check "setbc r26,4*cr1+so"
439func_check "setbc r26,4*cr2+lt"
440func_check "setbc r26,4*cr7+so"
441
442func_check "setbcr r26,4*cr7+so"
443func_check "setbcr r26,4*cr1+so"
444func_check "setbcr r26,4*cr2+lt"
445
446func_check "setnbc r26,lt"
447func_check "setnbc r26,so"
448func_check "setnbc r26,4*cr7+so"
449func_check "setnbc r26,4*cr1+so"
450func_check "setnbc r26,4*cr2+lt"
451
452func_check "setnbcr r26,lt"
453func_check "setnbcr r26,so"
454func_check "setnbcr r26,4*cr7+so"
455func_check "setnbcr r26,4*cr1+so"
456func_check "setnbcr r26,4*cr2+lt"
457
458func_check "stxvp vs20,0(0)"
459func_check "stxvp vs20,16(0)"
460func_check "stxvp vs20,32(0)"
461func_check "stxvp vs20,48(0)"
462func_check "stxvpx vs20,0,r1"
463func_check "stxvrbx vs0,r1,r2"
464func_check "stxvrdx vs0,r1,r2"
465func_check "stxvrhx vs0,r1,r2"
466func_check "stxvrwx vs0,r1,r2"
467func_check "vcfuged v0,v1,v2"
468func_check "vclrlb v0,v1,r2"
469func_check "vclrrb v0,v1,r2"
470func_check "vclzdm v0,v1,v2"
471func_check "vcmpequq v0,v1,v2"
472func_check "vcmpgtsq v0,v1,v2"
473func_check "vcmpgtuq v0,v1,v2"
474func_check "vcmpsq cr3,v0,v1"
475func_check "vcmpuq cr3,v0,v1"
476func_check "vcntmbb r0,v1,0"
477func_check "vcntmbb r0,v1,1"
478func_check "vcntmbd r0,v1,0"
479func_check "vcntmbd r0,v1,1"
480func_check "vcntmbh r0,v1,0"
481func_check "vcntmbh r0,v1,1"
482func_check "vcntmbw r0,v1,0"
483func_check "vcntmbw r0,v1,1"
484func_check "vctzdm v0,v1,v2"
485func_check "vdivesd v0,v1,v2"
486func_check "vdivesq v0,v1,v2"
487func_check "vdivesw v0,v1,v2"
488func_check "vdiveud v0,v1,v2"
489func_check "vdiveuq v0,v1,v2"
490func_check "vdiveuw v0,v1,v2"
491func_check "vdivsd v0,v1,v2"
492func_check "vdivsq v0,v1,v2"
493func_check "vdivsw v0,v1,v2"
494func_check "vdivud v0,v1,v2"
495func_check "vdivuq v0,v1,v2"
496func_check "vdivuw v0,v1,v2"
497func_check "vexpandbm v0,v1"
498func_check "vexpanddm v0,v1"
499func_check "vexpandhm v0,v1"
500func_check "vexpandqm v0,v1"
501func_check "vexpandwm v0,v1"
502func_check "vextddvlx v0,v1,v2,r3"
503func_check "vextddvrx v0,v1,v2,r3"
504func_check "vextdubvlx v0,v1,v2,r3"
505func_check "vextdubvrx v0,v1,v2,r3"
506func_check "vextduhvlx v0,v1,v2,r3"
507func_check "vextduhvrx v0,v1,v2,r3"
508func_check "vextduwvlx v0,v1,v2,r3"
509func_check "vextduwvrx v0,v1,v2,r3"
510func_check "vextractbm r0,v1"
511func_check "vextractdm r0,v1"
512func_check "vextracthm r0,v1"
513func_check "vextractqm r0,v1"
514func_check "vextractwm r0,v1"
515func_check "vextsd2q v0,v1"
516func_check "vgnb r0,v1,2"
517func_check "vgnb r0,v1,3"
518func_check "vgnb r0,v1,4"
519func_check "vgnb r0,v1,5"
520func_check "vgnb r0,v1,6"
521func_check "vgnb r0,v1,7"
522func_check "vinsblx v0,r1,r2"
523func_check "vinsbrx v0,r1,r2"
524func_check "vinsbvlx v0,r1,v2"
525func_check "vinsbvrx v0,r1,v2"
526func_check "vinsd v0,r1,3"
527func_check "vinsd v0,r1,7"
528func_check "vinsdlx v0,r1,r2"
529func_check "vinsdrx v0,r1,r2"
530func_check "vinshlx v0,r1,r2"
531func_check "vinshrx v0,r1,r2"
532func_check "vinshvlx v0,r1,v2"
533func_check "vinshvrx v0,r1,v2"
534func_check "vinsw v0,r1,3"
535func_check "vinsw v0,r1,7"
536func_check "vinswlx v0,r1,r2"
537func_check "vinswrx v0,r1,r2"
538func_check "vinswvlx v0,r1,v2"
539func_check "vinswvrx v0,r1,v2"
540func_check "vmodsd v0,v1,v2"
541func_check "vmodsq v0,v1,v2"
542func_check "vmodsw v0,v1,v2"
543func_check "vmodud v0,v1,v2"
544func_check "vmoduq v0,v1,v2"
545func_check "vmoduw v0,v1,v2"
546func_check "vmsumcud v0,v1,v2,v3"
547func_check "vmulesd v0,v1,v2"
548func_check "vmuleud v0,v1,v2"
549func_check "vmulhsd v0,v1,v2"
550func_check "vmulhsw v0,v1,v2"
551func_check "vmulhud v0,v1,v2"
552func_check "vmulhuw v0,v1,v2"
553func_check "vmulld v0,v1,v2"
554func_check "vmulosd v0,v1,v2"
555func_check "vmuloud v0,v1,v2"
556func_check "vpdepd v0,v1,v2"
557func_check "vpextd v0,v1,v2"
558func_check "vrlq v0,v1,v2"
559func_check "vrlqmi v0,v1,v2"
560func_check "vrlqnm v0,v1,v2"
561func_check "vsldbi v0,v1,v2,0"
562func_check "vsldbi v0,v1,v2,4"
563func_check "vslq v0,v1,v2"
564func_check "vsraq v0,v1,v2"
565func_check "vsrdbi v0,v1,v2,0"
566func_check "vsrdbi v0,v1,v2,4"
567func_check "vsrq v0,v1,v2"
568func_check "vstribl v0,v1"
569func_check "vstribl. v0,v1"
570func_check "vstribr v0,v1"
571func_check "vstribr. v0,v1"
572func_check "vstrihl v0,v1"
573func_check "vstrihl. v0,v1"
574func_check "vstrihr v0,v1"
575func_check "vstrihr. v0,v1"
576func_check "xscmpeqqp v0,v1,v2"
577func_check "xscmpgeqp v0,v1,v2"
578func_check "xscmpgtqp v0,v1,v2"
579func_check "xscvqpsqz v0,v1"
580func_check "xscvqpuqz v0,v1"
581func_check "xscvsqqp v0,v1"
582func_check "xscvuqqp v0,v1"
583func_check "xsmaxcqp v0,v1,v2"
584func_check "xsmincqp v0,v1,v2"
49977100
CL
585func_check "dmxvbf16ger2 a4,vs0,vs1"
586func_check "dmxvbf16ger2nn a4,vs0,vs1"
587func_check "dmxvbf16ger2np a4,vs0,vs1"
588func_check "dmxvbf16ger2pn a4,vs0,vs1"
589func_check "dmxvbf16ger2pp a4,vs0,vs1"
82d9b280
WS
590func_check "xvcvbf16spn vs0,vs1"
591func_check "xvcvspbf16 vs0,vs1"
49977100
CL
592func_check "dmxvf16ger2 a4,vs0,vs1"
593func_check "dmxvf16ger2nn a4,vs0,vs1"
594func_check "dmxvf16ger2np a4,vs0,vs1"
595func_check "dmxvf16ger2pn a4,vs0,vs1"
596func_check "dmxvf16ger2pp a4,vs0,vs1"
597func_check "dmxvf32ger a4,vs0,vs1"
598func_check "dmxvf32gernn a4,vs0,vs1"
599func_check "dmxvf32gernp a4,vs0,vs1"
600func_check "dmxvf32gerpn a4,vs0,vs1"
601func_check "dmxvf32gerpp a4,vs0,vs1"
602func_check "dmxvf64ger a4,vs22,vs0"
603func_check "dmxvf64gernn a4,vs22,vs0"
604func_check "dmxvf64gernp a4,vs22,vs0"
605func_check "dmxvf64gerpn a4,vs22,vs0"
606func_check "dmxvf64gerpp a4,vs22,vs0"
607func_check "dmxvi16ger2 a4,vs0,vs1"
608func_check "dmxvi16ger2pp a4,vs0,vs1"
609func_check "dmxvi16ger2s a4,vs0,vs1"
610func_check "dmxvi16ger2spp a4,vs0,vs1"
611func_check "dmxvi4ger8 a4,vs0,vs1"
612func_check "dmxvi4ger8pp a4,vs0,vs1"
613func_check "dmxvi8ger4 a4,vs0,vs1"
614func_check "dmxvi8ger4pp a4,vs0,vs1"
615func_check "dmxvi8ger4spp a4,vs0,vs1"
82d9b280
WS
616func_check "xvtlsbb cr3,vs0"
617func_check "xxblendvb vs0,vs1,vs2,vs3"
618func_check "xxblendvd vs0,vs1,vs2,vs3"
619func_check "xxblendvh vs0,vs1,vs2,vs3"
620func_check "xxblendvw vs0,vs1,vs2,vs3"
621func_check "xxeval vs0,vs1,vs2,vs3,0"
622func_check "xxeval vs0,vs1,vs2,vs3,3"
623func_check "xxgenpcvbm vs0,v1,0"
624func_check "xxgenpcvbm vs0,v1,1"
625func_check "xxgenpcvbm vs0,v1,2"
626func_check "xxgenpcvbm vs0,v1,3"
627func_check "xxgenpcvdm vs0,v1,0"
628func_check "xxgenpcvdm vs0,v1,1"
629func_check "xxgenpcvdm vs0,v1,2"
630func_check "xxgenpcvdm vs0,v1,3"
631func_check "xxgenpcvhm vs0,v1,0"
632func_check "xxgenpcvhm vs0,v1,1"
633func_check "xxgenpcvhm vs0,v1,2"
634func_check "xxgenpcvhm vs0,v1,3"
635func_check "xxgenpcvwm vs0,v1,0"
636func_check "xxgenpcvwm vs0,v1,1"
637func_check "xxgenpcvwm vs0,v1,2"
638func_check "xxgenpcvwm vs0,v1,3"
49977100
CL
639func_check "dmxxmfacc a4"
640func_check "dmxxmtacc a4"
82d9b280
WS
641func_check "xxpermx vs0,vs1,vs2,vs3,0"
642func_check "xxpermx vs0,vs1,vs2,vs3,3"
49977100 643func_check "dmsetaccz a4"
82d9b280
WS
644func_check "xxsplti32dx vs0,0,2779096485"
645func_check "xxsplti32dx vs0,0,4294967295"
646func_check "xxsplti32dx vs0,0,127"
647func_check "xxsplti32dx vs0,0,15"
648func_check "xxsplti32dx vs0,0,3"
649func_check "xxsplti32dx vs0,0,31"
650func_check "xxsplti32dx vs0,0,32768"
651func_check "xxsplti32dx vs0,0,63"
652func_check "xxsplti32dx vs0,0,66535"
653func_check "xxsplti32dx vs0,0,7"
654func_check "xxsplti32dx vs0,1,2779096485"
655func_check "xxsplti32dx vs0,1,4294967295"
656func_check "xxsplti32dx vs0,1,127"
657func_check "xxsplti32dx vs0,1,15"
658func_check "xxsplti32dx vs0,1,3"
659func_check "xxsplti32dx vs0,1,31"
660func_check "xxsplti32dx vs0,1,32768"
661func_check "xxsplti32dx vs0,1,63"
662func_check "xxsplti32dx vs0,1,66535"
663func_check "xxsplti32dx vs0,1,7"
664func_check "xxspltidp vs0,0"
665func_check "xxspltidp vs0,8388608"
666func_check "xxspltidp vs0,8388609"
667func_check "xxspltidp vs0,8594245"
668func_check "xxspltidp vs0,16777215"
669func_check "xxspltidp vs0,838860800"
670func_check "xxspltidp vs0,2139095040"
671func_check "xxspltidp vs0,2139095041"
672func_check "xxspltidp vs0,2139300677"
673func_check "xxspltidp vs0,2147483647"
674func_check "xxspltidp vs0,2147483648"
675func_check "xxspltidp vs0,2155872256"
676func_check "xxspltidp vs0,2155872257"
677func_check "xxspltidp vs0,2156077893"
678func_check "xxspltidp vs0,2164260863"
679func_check "xxspltidp vs0,4286578688"
680func_check "xxspltidp vs0,4286578689"
681func_check "xxspltidp vs0,4286784325"
682func_check "xxspltidp vs0,4294967295"
683func_check "xxspltiw vs0,0"
684func_check "xxspltiw vs0,1"
685func_check "xxspltiw vs0,3"
686func_check "xxspltiw vs0,8"