1*f5c631daSSadaf Ebrahimi // Copyright 2016, VIXL authors
2*f5c631daSSadaf Ebrahimi // All rights reserved.
3*f5c631daSSadaf Ebrahimi //
4*f5c631daSSadaf Ebrahimi // Redistribution and use in source and binary forms, with or without
5*f5c631daSSadaf Ebrahimi // modification, are permitted provided that the following conditions are met:
6*f5c631daSSadaf Ebrahimi //
7*f5c631daSSadaf Ebrahimi // * Redistributions of source code must retain the above copyright notice,
8*f5c631daSSadaf Ebrahimi // this list of conditions and the following disclaimer.
9*f5c631daSSadaf Ebrahimi // * Redistributions in binary form must reproduce the above copyright notice,
10*f5c631daSSadaf Ebrahimi // this list of conditions and the following disclaimer in the documentation
11*f5c631daSSadaf Ebrahimi // and/or other materials provided with the distribution.
12*f5c631daSSadaf Ebrahimi // * Neither the name of ARM Limited nor the names of its contributors may be
13*f5c631daSSadaf Ebrahimi // used to endorse or promote products derived from this software without
14*f5c631daSSadaf Ebrahimi // specific prior written permission.
15*f5c631daSSadaf Ebrahimi //
16*f5c631daSSadaf Ebrahimi // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS CONTRIBUTORS "AS IS" AND
17*f5c631daSSadaf Ebrahimi // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18*f5c631daSSadaf Ebrahimi // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19*f5c631daSSadaf Ebrahimi // DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
20*f5c631daSSadaf Ebrahimi // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21*f5c631daSSadaf Ebrahimi // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
22*f5c631daSSadaf Ebrahimi // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
23*f5c631daSSadaf Ebrahimi // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24*f5c631daSSadaf Ebrahimi // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
25*f5c631daSSadaf Ebrahimi // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26*f5c631daSSadaf Ebrahimi
27*f5c631daSSadaf Ebrahimi
28*f5c631daSSadaf Ebrahimi // -----------------------------------------------------------------------------
29*f5c631daSSadaf Ebrahimi // This file is auto generated from the
30*f5c631daSSadaf Ebrahimi // test/aarch32/config/template-simulator-aarch32.cc.in template file using
31*f5c631daSSadaf Ebrahimi // tools/generate_tests.py.
32*f5c631daSSadaf Ebrahimi //
33*f5c631daSSadaf Ebrahimi // PLEASE DO NOT EDIT.
34*f5c631daSSadaf Ebrahimi // -----------------------------------------------------------------------------
35*f5c631daSSadaf Ebrahimi
36*f5c631daSSadaf Ebrahimi
37*f5c631daSSadaf Ebrahimi #include "test-runner.h"
38*f5c631daSSadaf Ebrahimi
39*f5c631daSSadaf Ebrahimi #include "test-utils.h"
40*f5c631daSSadaf Ebrahimi #include "test-utils-aarch32.h"
41*f5c631daSSadaf Ebrahimi
42*f5c631daSSadaf Ebrahimi #include "aarch32/assembler-aarch32.h"
43*f5c631daSSadaf Ebrahimi #include "aarch32/disasm-aarch32.h"
44*f5c631daSSadaf Ebrahimi #include "aarch32/macro-assembler-aarch32.h"
45*f5c631daSSadaf Ebrahimi
46*f5c631daSSadaf Ebrahimi #define __ masm.
47*f5c631daSSadaf Ebrahimi #define BUF_SIZE (4096)
48*f5c631daSSadaf Ebrahimi
49*f5c631daSSadaf Ebrahimi #ifdef VIXL_INCLUDE_SIMULATOR_AARCH32
50*f5c631daSSadaf Ebrahimi // Run tests with the simulator.
51*f5c631daSSadaf Ebrahimi
52*f5c631daSSadaf Ebrahimi #define SETUP() MacroAssembler masm(BUF_SIZE)
53*f5c631daSSadaf Ebrahimi
54*f5c631daSSadaf Ebrahimi #define START() masm.GetBuffer()->Reset()
55*f5c631daSSadaf Ebrahimi
56*f5c631daSSadaf Ebrahimi #define END() \
57*f5c631daSSadaf Ebrahimi __ Hlt(0); \
58*f5c631daSSadaf Ebrahimi __ FinalizeCode();
59*f5c631daSSadaf Ebrahimi
60*f5c631daSSadaf Ebrahimi // TODO: Run the tests in the simulator.
61*f5c631daSSadaf Ebrahimi #define RUN()
62*f5c631daSSadaf Ebrahimi
63*f5c631daSSadaf Ebrahimi #else // ifdef VIXL_INCLUDE_SIMULATOR_AARCH32.
64*f5c631daSSadaf Ebrahimi
65*f5c631daSSadaf Ebrahimi #define SETUP() \
66*f5c631daSSadaf Ebrahimi MacroAssembler masm(BUF_SIZE); \
67*f5c631daSSadaf Ebrahimi UseScratchRegisterScope harness_scratch;
68*f5c631daSSadaf Ebrahimi
69*f5c631daSSadaf Ebrahimi #define START() \
70*f5c631daSSadaf Ebrahimi harness_scratch.Open(&masm); \
71*f5c631daSSadaf Ebrahimi harness_scratch.ExcludeAll(); \
72*f5c631daSSadaf Ebrahimi masm.GetBuffer()->Reset(); \
73*f5c631daSSadaf Ebrahimi __ Push(r4); \
74*f5c631daSSadaf Ebrahimi __ Push(r5); \
75*f5c631daSSadaf Ebrahimi __ Push(r6); \
76*f5c631daSSadaf Ebrahimi __ Push(r7); \
77*f5c631daSSadaf Ebrahimi __ Push(r8); \
78*f5c631daSSadaf Ebrahimi __ Push(r9); \
79*f5c631daSSadaf Ebrahimi __ Push(r10); \
80*f5c631daSSadaf Ebrahimi __ Push(r11); \
81*f5c631daSSadaf Ebrahimi __ Push(lr); \
82*f5c631daSSadaf Ebrahimi harness_scratch.Include(ip);
83*f5c631daSSadaf Ebrahimi
84*f5c631daSSadaf Ebrahimi #define END() \
85*f5c631daSSadaf Ebrahimi harness_scratch.Exclude(ip); \
86*f5c631daSSadaf Ebrahimi __ Pop(lr); \
87*f5c631daSSadaf Ebrahimi __ Pop(r11); \
88*f5c631daSSadaf Ebrahimi __ Pop(r10); \
89*f5c631daSSadaf Ebrahimi __ Pop(r9); \
90*f5c631daSSadaf Ebrahimi __ Pop(r8); \
91*f5c631daSSadaf Ebrahimi __ Pop(r7); \
92*f5c631daSSadaf Ebrahimi __ Pop(r6); \
93*f5c631daSSadaf Ebrahimi __ Pop(r5); \
94*f5c631daSSadaf Ebrahimi __ Pop(r4); \
95*f5c631daSSadaf Ebrahimi __ Bx(lr); \
96*f5c631daSSadaf Ebrahimi __ FinalizeCode(); \
97*f5c631daSSadaf Ebrahimi harness_scratch.Close();
98*f5c631daSSadaf Ebrahimi
99*f5c631daSSadaf Ebrahimi #define RUN() \
100*f5c631daSSadaf Ebrahimi { \
101*f5c631daSSadaf Ebrahimi int pcs_offset = masm.IsUsingT32() ? 1 : 0; \
102*f5c631daSSadaf Ebrahimi masm.GetBuffer()->SetExecutable(); \
103*f5c631daSSadaf Ebrahimi ExecuteMemory(masm.GetBuffer()->GetStartAddress<byte*>(), \
104*f5c631daSSadaf Ebrahimi masm.GetSizeOfCodeGenerated(), \
105*f5c631daSSadaf Ebrahimi pcs_offset); \
106*f5c631daSSadaf Ebrahimi masm.GetBuffer()->SetWritable(); \
107*f5c631daSSadaf Ebrahimi }
108*f5c631daSSadaf Ebrahimi
109*f5c631daSSadaf Ebrahimi #endif // ifdef VIXL_INCLUDE_SIMULATOR_AARCH32
110*f5c631daSSadaf Ebrahimi
111*f5c631daSSadaf Ebrahimi namespace vixl {
112*f5c631daSSadaf Ebrahimi namespace aarch32 {
113*f5c631daSSadaf Ebrahimi
114*f5c631daSSadaf Ebrahimi // List of instruction encodings:
115*f5c631daSSadaf Ebrahimi #define FOREACH_INSTRUCTION(M) \
116*f5c631daSSadaf Ebrahimi M(Vadd) \
117*f5c631daSSadaf Ebrahimi M(Vsub)
118*f5c631daSSadaf Ebrahimi
119*f5c631daSSadaf Ebrahimi
120*f5c631daSSadaf Ebrahimi // The following definitions are defined again in each generated test, therefore
121*f5c631daSSadaf Ebrahimi // we need to place them in an anomymous namespace. It expresses that they are
122*f5c631daSSadaf Ebrahimi // local to this file only, and the compiler is not allowed to share these types
123*f5c631daSSadaf Ebrahimi // across test files during template instantiation. Specifically, `Operands` and
124*f5c631daSSadaf Ebrahimi // `Inputs` have various layouts across generated tests so they absolutely
125*f5c631daSSadaf Ebrahimi // cannot be shared.
126*f5c631daSSadaf Ebrahimi
127*f5c631daSSadaf Ebrahimi #ifdef VIXL_INCLUDE_TARGET_A32
128*f5c631daSSadaf Ebrahimi namespace {
129*f5c631daSSadaf Ebrahimi
130*f5c631daSSadaf Ebrahimi // Values to be passed to the assembler to produce the instruction under test.
131*f5c631daSSadaf Ebrahimi struct Operands {
132*f5c631daSSadaf Ebrahimi DataType dt;
133*f5c631daSSadaf Ebrahimi DRegister rd;
134*f5c631daSSadaf Ebrahimi DRegister rn;
135*f5c631daSSadaf Ebrahimi DRegister rm;
136*f5c631daSSadaf Ebrahimi };
137*f5c631daSSadaf Ebrahimi
138*f5c631daSSadaf Ebrahimi // Input data to feed to the instruction.
139*f5c631daSSadaf Ebrahimi struct Inputs {
140*f5c631daSSadaf Ebrahimi uint32_t fpscr;
141*f5c631daSSadaf Ebrahimi uint64_t rd;
142*f5c631daSSadaf Ebrahimi uint64_t rn;
143*f5c631daSSadaf Ebrahimi uint64_t rm;
144*f5c631daSSadaf Ebrahimi };
145*f5c631daSSadaf Ebrahimi
146*f5c631daSSadaf Ebrahimi // This structure contains all input data needed to test one specific encoding.
147*f5c631daSSadaf Ebrahimi // It used to generate a loop over an instruction.
148*f5c631daSSadaf Ebrahimi struct TestLoopData {
149*f5c631daSSadaf Ebrahimi // The `operands` fields represents the values to pass to the assembler to
150*f5c631daSSadaf Ebrahimi // produce the instruction.
151*f5c631daSSadaf Ebrahimi Operands operands;
152*f5c631daSSadaf Ebrahimi // Description of the operands, used for error reporting.
153*f5c631daSSadaf Ebrahimi const char* operands_description;
154*f5c631daSSadaf Ebrahimi // Unique identifier, used for generating traces.
155*f5c631daSSadaf Ebrahimi const char* identifier;
156*f5c631daSSadaf Ebrahimi // Array of values to be fed to the instruction.
157*f5c631daSSadaf Ebrahimi size_t input_size;
158*f5c631daSSadaf Ebrahimi const Inputs* inputs;
159*f5c631daSSadaf Ebrahimi };
160*f5c631daSSadaf Ebrahimi
161*f5c631daSSadaf Ebrahimi static const Inputs kFloats[] =
162*f5c631daSSadaf Ebrahimi {{0x0, 0x3fefffffffffffff, 0x000fffffffffffff, 0xfff0000000000000},
163*f5c631daSSadaf Ebrahimi {0x0, 0xffefffffffffffff, 0xbfe0000000000000, 0x3ff0000000000000},
164*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0x3ff0000000000001, 0x0000000000000000},
165*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000000, 0x4024000000000000, 0x4024000000000000},
166*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000000, 0x3fdfffffffffffff, 0x0000000000000000},
167*f5c631daSSadaf Ebrahimi {0x0, 0x3fefffffffffffff, 0x7fefffffffffffff, 0xfff0000000000000},
168*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000000, 0xc024000000000000, 0x7ff123456789abcd},
169*f5c631daSSadaf Ebrahimi {0x0, 0x000fffffffffffff, 0x3ff0000000000001, 0xbff0000000000001},
170*f5c631daSSadaf Ebrahimi {0x0, 0x0000000000000001, 0x0000000000000000, 0x3fdfffffffffffff},
171*f5c631daSSadaf Ebrahimi {0x0, 0x8000000000000000, 0xfff123456789abcd, 0xfff0000000000000},
172*f5c631daSSadaf Ebrahimi {0x0, 0xfff923456789abcd, 0xc024000000000000, 0x3ff0000000000000},
173*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0x3ff8000000000000, 0x3fdfffffffffffff},
174*f5c631daSSadaf Ebrahimi {0x0, 0x7ff923456789abcd, 0x3ff0000000000001, 0x8000000000000001},
175*f5c631daSSadaf Ebrahimi {0x0, 0x0010000000000000, 0x0000000000000001, 0xbff0000000000000},
176*f5c631daSSadaf Ebrahimi {0x0, 0x3fefffffffffffff, 0x3fdfffffffffffff, 0xfff0000000000000},
177*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000001, 0x800fffffffffffff, 0xfff123456789abcd},
178*f5c631daSSadaf Ebrahimi {0x0, 0xffefffffffffffff, 0x3ff0000000000001, 0x800fffffffffffff},
179*f5c631daSSadaf Ebrahimi {0x0, 0x0010000000000000, 0xbfe0000000000001, 0xbfe0000000000000},
180*f5c631daSSadaf Ebrahimi {0x0, 0xc024000000000000, 0x0000000000000000, 0xbff0000000000000},
181*f5c631daSSadaf Ebrahimi {0x0, 0xfff0000000000000, 0x8000000000000001, 0x7ff0000000000000},
182*f5c631daSSadaf Ebrahimi {0x0, 0x3fdfffffffffffff, 0xbfdfffffffffffff, 0x3fe0000000000001},
183*f5c631daSSadaf Ebrahimi {0x0, 0x4024000000000000, 0x000fffffffffffff, 0x7ff923456789abcd},
184*f5c631daSSadaf Ebrahimi {0x0, 0xfff8000000000000, 0xbfe0000000000001, 0x3ff0000000000001},
185*f5c631daSSadaf Ebrahimi {0x0, 0x7fefffffffffffff, 0xbfe0000000000001, 0x3ff0000000000000},
186*f5c631daSSadaf Ebrahimi {0x0, 0x7fefffffffffffff, 0xbfe0000000000001, 0xfff123456789abcd},
187*f5c631daSSadaf Ebrahimi {0x0, 0xfff8000000000000, 0x7ff0000000000000, 0x7fefffffffffffff},
188*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000000, 0x7ff123456789abcd, 0x800123456789abcd},
189*f5c631daSSadaf Ebrahimi {0x0, 0x3ff0000000000001, 0xffefffffffffffff, 0xfff923456789abcd},
190*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000000, 0x0000000000000001, 0x3ff8000000000000},
191*f5c631daSSadaf Ebrahimi {0x0, 0x800123456789abcd, 0xbfe0000000000001, 0x8000000000000000},
192*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000000, 0x3fe0000000000000, 0x3ff8000000000000},
193*f5c631daSSadaf Ebrahimi {0x0, 0x8010000000000000, 0x0010000000000000, 0x8010000000000000},
194*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000001, 0x7ff923456789abcd, 0x000123456789abcd},
195*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000001, 0x3ff8000000000000, 0xbfe0000000000001},
196*f5c631daSSadaf Ebrahimi {0x0, 0xbfefffffffffffff, 0x0000000000000001, 0x0010000000000000},
197*f5c631daSSadaf Ebrahimi {0x0, 0xbfefffffffffffff, 0xbfdfffffffffffff, 0xbff8000000000000},
198*f5c631daSSadaf Ebrahimi {0x0, 0x0000000000000000, 0x3ff0000000000000, 0x3fe0000000000001},
199*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000000, 0xffefffffffffffff, 0x3fefffffffffffff},
200*f5c631daSSadaf Ebrahimi {0x0, 0x3ff8000000000000, 0x7ff8000000000000, 0x7ff0000000000000},
201*f5c631daSSadaf Ebrahimi {0x0, 0x4024000000000000, 0xbfefffffffffffff, 0xfff8000000000000},
202*f5c631daSSadaf Ebrahimi {0x0, 0x0000000000000000, 0x000123456789abcd, 0x3fe0000000000000},
203*f5c631daSSadaf Ebrahimi {0x0, 0x7fefffffffffffff, 0x3fe0000000000001, 0xfff0000000000000},
204*f5c631daSSadaf Ebrahimi {0x0, 0xbfefffffffffffff, 0x000123456789abcd, 0x800fffffffffffff},
205*f5c631daSSadaf Ebrahimi {0x0, 0xfff8000000000000, 0x8000000000000001, 0x7fefffffffffffff},
206*f5c631daSSadaf Ebrahimi {0x0, 0x3ff8000000000000, 0x3ff0000000000001, 0xfff123456789abcd},
207*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000001, 0x0000000000000000, 0xbfefffffffffffff},
208*f5c631daSSadaf Ebrahimi {0x0, 0x7fefffffffffffff, 0xfff0000000000000, 0xbff0000000000000},
209*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0x3fe0000000000000, 0x7ff123456789abcd},
210*f5c631daSSadaf Ebrahimi {0x0, 0x3ff0000000000000, 0x3ff0000000000000, 0x8000000000000001},
211*f5c631daSSadaf Ebrahimi {0x0, 0xbff8000000000000, 0x4024000000000000, 0x3ff8000000000000},
212*f5c631daSSadaf Ebrahimi {0x0, 0xfff923456789abcd, 0xbff8000000000000, 0x000fffffffffffff},
213*f5c631daSSadaf Ebrahimi {0x0, 0x800123456789abcd, 0x0000000000000001, 0x4024000000000000},
214*f5c631daSSadaf Ebrahimi {0x0, 0x0000000000000000, 0xfff923456789abcd, 0x0000000000000000},
215*f5c631daSSadaf Ebrahimi {0x0, 0x3ff0000000000000, 0xfff8000000000000, 0xbfefffffffffffff},
216*f5c631daSSadaf Ebrahimi {0x0, 0x8000000000000000, 0x0000000000000001, 0x3fefffffffffffff},
217*f5c631daSSadaf Ebrahimi {0x0, 0xbff8000000000000, 0xbff0000000000000, 0x7ff8000000000000},
218*f5c631daSSadaf Ebrahimi {0x0, 0x3fdfffffffffffff, 0x8000000000000001, 0x3fdfffffffffffff},
219*f5c631daSSadaf Ebrahimi {0x0, 0x8010000000000000, 0x0000000000000001, 0x000123456789abcd},
220*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000001, 0x000fffffffffffff, 0xbfe0000000000001},
221*f5c631daSSadaf Ebrahimi {0x0, 0x7ff8000000000000, 0xbff0000000000001, 0x7ff0000000000000},
222*f5c631daSSadaf Ebrahimi {0x0, 0xbfdfffffffffffff, 0x7ff123456789abcd, 0x4024000000000000},
223*f5c631daSSadaf Ebrahimi {0x0, 0x3ff8000000000000, 0xbff0000000000000, 0xbfdfffffffffffff},
224*f5c631daSSadaf Ebrahimi {0x0, 0x000123456789abcd, 0x3fefffffffffffff, 0x0000000000000000},
225*f5c631daSSadaf Ebrahimi {0x0, 0x800fffffffffffff, 0xc024000000000000, 0x0000000000000001},
226*f5c631daSSadaf Ebrahimi {0x0, 0xbff8000000000000, 0xbfe0000000000000, 0x8010000000000000},
227*f5c631daSSadaf Ebrahimi {0x0, 0x3fdfffffffffffff, 0x000fffffffffffff, 0x3fdfffffffffffff},
228*f5c631daSSadaf Ebrahimi {0x0, 0x0010000000000000, 0x800fffffffffffff, 0x3ff0000000000001},
229*f5c631daSSadaf Ebrahimi {0x0, 0x3ff8000000000000, 0xfff0000000000000, 0x000fffffffffffff},
230*f5c631daSSadaf Ebrahimi {0x0, 0x3fefffffffffffff, 0xbfefffffffffffff, 0x3fe0000000000000},
231*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0xbff0000000000001, 0xbff8000000000000},
232*f5c631daSSadaf Ebrahimi {0x0, 0x000fffffffffffff, 0xfff0000000000000, 0xbfe0000000000000},
233*f5c631daSSadaf Ebrahimi {0x0, 0x0000000000000000, 0x3fdfffffffffffff, 0x7ff123456789abcd},
234*f5c631daSSadaf Ebrahimi {0x0, 0x3ff8000000000000, 0xbff8000000000000, 0x000fffffffffffff},
235*f5c631daSSadaf Ebrahimi {0x0, 0x7ff923456789abcd, 0x7ff0000000000000, 0x7ff923456789abcd},
236*f5c631daSSadaf Ebrahimi {0x0, 0x000fffffffffffff, 0x000fffffffffffff, 0x3fe0000000000000},
237*f5c631daSSadaf Ebrahimi {0x0, 0x7ff923456789abcd, 0xbff0000000000000, 0x8000000000000001},
238*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000001, 0x3ff0000000000000, 0x7fefffffffffffff},
239*f5c631daSSadaf Ebrahimi {0x0, 0xfff923456789abcd, 0x3fe0000000000000, 0xc024000000000000},
240*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000000, 0x8010000000000000, 0x000fffffffffffff},
241*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000001, 0x4024000000000000, 0x7fefffffffffffff},
242*f5c631daSSadaf Ebrahimi {0x0, 0xfff0000000000000, 0x0000000000000000, 0xffefffffffffffff},
243*f5c631daSSadaf Ebrahimi {0x0, 0xfff8000000000000, 0x3fe0000000000000, 0x800fffffffffffff},
244*f5c631daSSadaf Ebrahimi {0x0, 0x000fffffffffffff, 0xbfe0000000000000, 0x7fefffffffffffff},
245*f5c631daSSadaf Ebrahimi {0x0, 0x000fffffffffffff, 0xffefffffffffffff, 0x7ff0000000000000},
246*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000001, 0x3ff0000000000001, 0x7ff123456789abcd},
247*f5c631daSSadaf Ebrahimi {0x0, 0xc024000000000000, 0x8000000000000001, 0x3ff8000000000000},
248*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000001, 0x8000000000000001, 0xbfdfffffffffffff},
249*f5c631daSSadaf Ebrahimi {0x0, 0xfff0000000000000, 0x0000000000000000, 0xfff923456789abcd},
250*f5c631daSSadaf Ebrahimi {0x0, 0x3fefffffffffffff, 0xbfdfffffffffffff, 0x8000000000000001},
251*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000000, 0xfff123456789abcd, 0xffefffffffffffff},
252*f5c631daSSadaf Ebrahimi {0x0, 0x3fefffffffffffff, 0xfff923456789abcd, 0x800123456789abcd},
253*f5c631daSSadaf Ebrahimi {0x0, 0x8010000000000000, 0x3ff0000000000000, 0xc024000000000000},
254*f5c631daSSadaf Ebrahimi {0x0, 0x7ff123456789abcd, 0x3fe0000000000001, 0x0000000000000001},
255*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0xffefffffffffffff, 0x3fe0000000000001},
256*f5c631daSSadaf Ebrahimi {0x0, 0x0010000000000000, 0xfff923456789abcd, 0x000fffffffffffff},
257*f5c631daSSadaf Ebrahimi {0x0, 0x4024000000000000, 0x7ff8000000000000, 0x000123456789abcd},
258*f5c631daSSadaf Ebrahimi {0x0, 0x8010000000000000, 0x8000000000000001, 0xbfe0000000000000},
259*f5c631daSSadaf Ebrahimi {0x0, 0x000fffffffffffff, 0x3ff0000000000000, 0x3ff0000000000001},
260*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000000, 0x3fe0000000000000, 0xbff0000000000000},
261*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000001, 0xbfe0000000000000, 0x7ff0000000000000}};
262*f5c631daSSadaf Ebrahimi
263*f5c631daSSadaf Ebrahimi static const Inputs kFloatsSameRegisters[] =
264*f5c631daSSadaf Ebrahimi {{0x0, 0x8000000000000000, 0xbfdfffffffffffff, 0xbfdfffffffffffff},
265*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000000, 0xfff0000000000000, 0xfff0000000000000},
266*f5c631daSSadaf Ebrahimi {0x0, 0x0000000000000001, 0x3fdfffffffffffff, 0x3fdfffffffffffff},
267*f5c631daSSadaf Ebrahimi {0x0, 0xfff8000000000000, 0x8000000000000001, 0x8000000000000001},
268*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0x7ff923456789abcd, 0x7ff923456789abcd},
269*f5c631daSSadaf Ebrahimi {0x0, 0x7ff123456789abcd, 0xfff0000000000000, 0xfff0000000000000},
270*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000001, 0xfff123456789abcd, 0xfff123456789abcd},
271*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000001, 0x8000000000000000, 0x8000000000000000},
272*f5c631daSSadaf Ebrahimi {0x0, 0xc024000000000000, 0x3fe0000000000001, 0x3fe0000000000001},
273*f5c631daSSadaf Ebrahimi {0x0, 0xfff0000000000000, 0x8000000000000001, 0x8000000000000001},
274*f5c631daSSadaf Ebrahimi {0x0, 0x800fffffffffffff, 0x7ff8000000000000, 0x7ff8000000000000},
275*f5c631daSSadaf Ebrahimi {0x0, 0x800fffffffffffff, 0xfff8000000000000, 0xfff8000000000000},
276*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000001, 0x7ff8000000000000, 0x7ff8000000000000},
277*f5c631daSSadaf Ebrahimi {0x0, 0x0010000000000000, 0x7fefffffffffffff, 0x7fefffffffffffff},
278*f5c631daSSadaf Ebrahimi {0x0, 0xfff0000000000000, 0xbff0000000000000, 0xbff0000000000000},
279*f5c631daSSadaf Ebrahimi {0x0, 0xc024000000000000, 0xfff8000000000000, 0xfff8000000000000},
280*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000001, 0xbfe0000000000000, 0xbfe0000000000000},
281*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000001, 0x3ff0000000000000, 0x3ff0000000000000},
282*f5c631daSSadaf Ebrahimi {0x0, 0x3fdfffffffffffff, 0xbfe0000000000000, 0xbfe0000000000000},
283*f5c631daSSadaf Ebrahimi {0x0, 0xfff923456789abcd, 0xfff123456789abcd, 0xfff123456789abcd},
284*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0x800123456789abcd, 0x800123456789abcd},
285*f5c631daSSadaf Ebrahimi {0x0, 0x3ff8000000000000, 0xbfdfffffffffffff, 0xbfdfffffffffffff},
286*f5c631daSSadaf Ebrahimi {0x0, 0xffefffffffffffff, 0xbfe0000000000000, 0xbfe0000000000000},
287*f5c631daSSadaf Ebrahimi {0x0, 0x800123456789abcd, 0xbff0000000000001, 0xbff0000000000001},
288*f5c631daSSadaf Ebrahimi {0x0, 0x0000000000000000, 0x800fffffffffffff, 0x800fffffffffffff},
289*f5c631daSSadaf Ebrahimi {0x0, 0xfff0000000000000, 0x3ff8000000000000, 0x3ff8000000000000},
290*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0x7ff0000000000000, 0x7ff0000000000000},
291*f5c631daSSadaf Ebrahimi {0x0, 0x0010000000000000, 0xfff923456789abcd, 0xfff923456789abcd},
292*f5c631daSSadaf Ebrahimi {0x0, 0x3fefffffffffffff, 0xfff0000000000000, 0xfff0000000000000},
293*f5c631daSSadaf Ebrahimi {0x0, 0x000fffffffffffff, 0x7ff0000000000000, 0x7ff0000000000000},
294*f5c631daSSadaf Ebrahimi {0x0, 0x000123456789abcd, 0xbfe0000000000001, 0xbfe0000000000001},
295*f5c631daSSadaf Ebrahimi {0x0, 0xfff923456789abcd, 0x3fefffffffffffff, 0x3fefffffffffffff},
296*f5c631daSSadaf Ebrahimi {0x0, 0x3fdfffffffffffff, 0xbff0000000000001, 0xbff0000000000001},
297*f5c631daSSadaf Ebrahimi {0x0, 0x000123456789abcd, 0xbfe0000000000000, 0xbfe0000000000000},
298*f5c631daSSadaf Ebrahimi {0x0, 0xfff0000000000000, 0xbfefffffffffffff, 0xbfefffffffffffff},
299*f5c631daSSadaf Ebrahimi {0x0, 0xfff8000000000000, 0xfff0000000000000, 0xfff0000000000000},
300*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000000, 0xbfdfffffffffffff, 0xbfdfffffffffffff},
301*f5c631daSSadaf Ebrahimi {0x0, 0x0010000000000000, 0xfff0000000000000, 0xfff0000000000000},
302*f5c631daSSadaf Ebrahimi {0x0, 0xfff123456789abcd, 0x3fe0000000000000, 0x3fe0000000000000},
303*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000000, 0xfff0000000000000, 0xfff0000000000000},
304*f5c631daSSadaf Ebrahimi {0x0, 0x3fdfffffffffffff, 0xbff8000000000000, 0xbff8000000000000},
305*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000001, 0x3fefffffffffffff, 0x3fefffffffffffff},
306*f5c631daSSadaf Ebrahimi {0x0, 0x0000000000000000, 0x7ff0000000000000, 0x7ff0000000000000},
307*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0xffefffffffffffff, 0xffefffffffffffff},
308*f5c631daSSadaf Ebrahimi {0x0, 0x000123456789abcd, 0x3fdfffffffffffff, 0x3fdfffffffffffff},
309*f5c631daSSadaf Ebrahimi {0x0, 0xc024000000000000, 0x4024000000000000, 0x4024000000000000},
310*f5c631daSSadaf Ebrahimi {0x0, 0x3fefffffffffffff, 0xbfdfffffffffffff, 0xbfdfffffffffffff},
311*f5c631daSSadaf Ebrahimi {0x0, 0x0010000000000000, 0x7ff8000000000000, 0x7ff8000000000000},
312*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000001, 0x7ff8000000000000, 0x7ff8000000000000},
313*f5c631daSSadaf Ebrahimi {0x0, 0x8000000000000000, 0x7fefffffffffffff, 0x7fefffffffffffff},
314*f5c631daSSadaf Ebrahimi {0x0, 0x7ff123456789abcd, 0xfff0000000000000, 0xfff0000000000000},
315*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0x000fffffffffffff, 0x000fffffffffffff},
316*f5c631daSSadaf Ebrahimi {0x0, 0x7ff923456789abcd, 0xbff8000000000000, 0xbff8000000000000},
317*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0xbfefffffffffffff, 0xbfefffffffffffff},
318*f5c631daSSadaf Ebrahimi {0x0, 0xfff123456789abcd, 0x3ff0000000000000, 0x3ff0000000000000},
319*f5c631daSSadaf Ebrahimi {0x0, 0xfff923456789abcd, 0x3ff0000000000001, 0x3ff0000000000001},
320*f5c631daSSadaf Ebrahimi {0x0, 0xc024000000000000, 0xfff123456789abcd, 0xfff123456789abcd},
321*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000001, 0x8010000000000000, 0x8010000000000000},
322*f5c631daSSadaf Ebrahimi {0x0, 0xfff923456789abcd, 0xbfdfffffffffffff, 0xbfdfffffffffffff},
323*f5c631daSSadaf Ebrahimi {0x0, 0x8010000000000000, 0x3fe0000000000000, 0x3fe0000000000000},
324*f5c631daSSadaf Ebrahimi {0x0, 0xfff123456789abcd, 0x3ff8000000000000, 0x3ff8000000000000},
325*f5c631daSSadaf Ebrahimi {0x0, 0x800fffffffffffff, 0x000fffffffffffff, 0x000fffffffffffff},
326*f5c631daSSadaf Ebrahimi {0x0, 0xffefffffffffffff, 0xfff0000000000000, 0xfff0000000000000},
327*f5c631daSSadaf Ebrahimi {0x0, 0x4024000000000000, 0xbfe0000000000001, 0xbfe0000000000001},
328*f5c631daSSadaf Ebrahimi {0x0, 0xfff0000000000000, 0xfff923456789abcd, 0xfff923456789abcd},
329*f5c631daSSadaf Ebrahimi {0x0, 0x7ff123456789abcd, 0xfff0000000000000, 0xfff0000000000000},
330*f5c631daSSadaf Ebrahimi {0x0, 0x8000000000000000, 0x7ff123456789abcd, 0x7ff123456789abcd},
331*f5c631daSSadaf Ebrahimi {0x0, 0x0000000000000001, 0xc024000000000000, 0xc024000000000000},
332*f5c631daSSadaf Ebrahimi {0x0, 0x0010000000000000, 0x7ff0000000000000, 0x7ff0000000000000},
333*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000000, 0xbff0000000000000, 0xbff0000000000000},
334*f5c631daSSadaf Ebrahimi {0x0, 0xbfdfffffffffffff, 0x8010000000000000, 0x8010000000000000},
335*f5c631daSSadaf Ebrahimi {0x0, 0xbff8000000000000, 0x3fe0000000000001, 0x3fe0000000000001},
336*f5c631daSSadaf Ebrahimi {0x0, 0xffefffffffffffff, 0x8000000000000000, 0x8000000000000000},
337*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000000, 0x7ff8000000000000, 0x7ff8000000000000},
338*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000001, 0xbff8000000000000, 0xbff8000000000000},
339*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000000, 0xbfe0000000000001, 0xbfe0000000000001},
340*f5c631daSSadaf Ebrahimi {0x0, 0xc024000000000000, 0x7ff0000000000000, 0x7ff0000000000000},
341*f5c631daSSadaf Ebrahimi {0x0, 0x8000000000000001, 0x7fefffffffffffff, 0x7fefffffffffffff},
342*f5c631daSSadaf Ebrahimi {0x0, 0x7ff923456789abcd, 0xfff0000000000000, 0xfff0000000000000},
343*f5c631daSSadaf Ebrahimi {0x0, 0x8010000000000000, 0x7ff0000000000000, 0x7ff0000000000000},
344*f5c631daSSadaf Ebrahimi {0x0, 0xc024000000000000, 0x800123456789abcd, 0x800123456789abcd},
345*f5c631daSSadaf Ebrahimi {0x0, 0x7ff0000000000000, 0xc024000000000000, 0xc024000000000000},
346*f5c631daSSadaf Ebrahimi {0x0, 0x4024000000000000, 0x0010000000000000, 0x0010000000000000},
347*f5c631daSSadaf Ebrahimi {0x0, 0x3ff0000000000000, 0x7ff0000000000000, 0x7ff0000000000000},
348*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000001, 0xc024000000000000, 0xc024000000000000},
349*f5c631daSSadaf Ebrahimi {0x0, 0xbfdfffffffffffff, 0x7ff0000000000000, 0x7ff0000000000000},
350*f5c631daSSadaf Ebrahimi {0x0, 0x000123456789abcd, 0xfff8000000000000, 0xfff8000000000000},
351*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000001, 0x000123456789abcd, 0x000123456789abcd},
352*f5c631daSSadaf Ebrahimi {0x0, 0x0000000000000000, 0x7ff123456789abcd, 0x7ff123456789abcd},
353*f5c631daSSadaf Ebrahimi {0x0, 0x3ff0000000000001, 0x7ff8000000000000, 0x7ff8000000000000},
354*f5c631daSSadaf Ebrahimi {0x0, 0x3fe0000000000001, 0x3ff0000000000001, 0x3ff0000000000001},
355*f5c631daSSadaf Ebrahimi {0x0, 0x3ff0000000000001, 0x000123456789abcd, 0x000123456789abcd},
356*f5c631daSSadaf Ebrahimi {0x0, 0x3ff8000000000000, 0x8010000000000000, 0x8010000000000000},
357*f5c631daSSadaf Ebrahimi {0x0, 0x8000000000000000, 0x800fffffffffffff, 0x800fffffffffffff},
358*f5c631daSSadaf Ebrahimi {0x0, 0x7ff8000000000000, 0x7ff0000000000000, 0x7ff0000000000000},
359*f5c631daSSadaf Ebrahimi {0x0, 0xbff0000000000000, 0xfff8000000000000, 0xfff8000000000000},
360*f5c631daSSadaf Ebrahimi {0x0, 0x000fffffffffffff, 0xbff8000000000000, 0xbff8000000000000},
361*f5c631daSSadaf Ebrahimi {0x0, 0x7ff123456789abcd, 0x8010000000000000, 0x8010000000000000},
362*f5c631daSSadaf Ebrahimi {0x0, 0x8000000000000000, 0x3fefffffffffffff, 0x3fefffffffffffff},
363*f5c631daSSadaf Ebrahimi {0x0, 0xbfe0000000000000, 0x7ff0000000000000, 0x7ff0000000000000}};
364*f5c631daSSadaf Ebrahimi
365*f5c631daSSadaf Ebrahimi
366*f5c631daSSadaf Ebrahimi // A loop will be generated for each element of this array.
367*f5c631daSSadaf Ebrahimi const TestLoopData kTests[] = {{{F64, d3, d31, d11},
368*f5c631daSSadaf Ebrahimi "F64 d3 d31 d11",
369*f5c631daSSadaf Ebrahimi "Floats_F64_d3_d31_d11",
370*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
371*f5c631daSSadaf Ebrahimi kFloats},
372*f5c631daSSadaf Ebrahimi {{F64, d21, d17, d0},
373*f5c631daSSadaf Ebrahimi "F64 d21 d17 d0",
374*f5c631daSSadaf Ebrahimi "Floats_F64_d21_d17_d0",
375*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
376*f5c631daSSadaf Ebrahimi kFloats},
377*f5c631daSSadaf Ebrahimi {{F64, d8, d4, d16},
378*f5c631daSSadaf Ebrahimi "F64 d8 d4 d16",
379*f5c631daSSadaf Ebrahimi "Floats_F64_d8_d4_d16",
380*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
381*f5c631daSSadaf Ebrahimi kFloats},
382*f5c631daSSadaf Ebrahimi {{F64, d18, d11, d29},
383*f5c631daSSadaf Ebrahimi "F64 d18 d11 d29",
384*f5c631daSSadaf Ebrahimi "Floats_F64_d18_d11_d29",
385*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
386*f5c631daSSadaf Ebrahimi kFloats},
387*f5c631daSSadaf Ebrahimi {{F64, d18, d7, d16},
388*f5c631daSSadaf Ebrahimi "F64 d18 d7 d16",
389*f5c631daSSadaf Ebrahimi "Floats_F64_d18_d7_d16",
390*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
391*f5c631daSSadaf Ebrahimi kFloats},
392*f5c631daSSadaf Ebrahimi {{F64, d31, d28, d30},
393*f5c631daSSadaf Ebrahimi "F64 d31 d28 d30",
394*f5c631daSSadaf Ebrahimi "Floats_F64_d31_d28_d30",
395*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
396*f5c631daSSadaf Ebrahimi kFloats},
397*f5c631daSSadaf Ebrahimi {{F64, d3, d27, d4},
398*f5c631daSSadaf Ebrahimi "F64 d3 d27 d4",
399*f5c631daSSadaf Ebrahimi "Floats_F64_d3_d27_d4",
400*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
401*f5c631daSSadaf Ebrahimi kFloats},
402*f5c631daSSadaf Ebrahimi {{F64, d16, d17, d25},
403*f5c631daSSadaf Ebrahimi "F64 d16 d17 d25",
404*f5c631daSSadaf Ebrahimi "Floats_F64_d16_d17_d25",
405*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
406*f5c631daSSadaf Ebrahimi kFloats},
407*f5c631daSSadaf Ebrahimi {{F64, d12, d16, d21},
408*f5c631daSSadaf Ebrahimi "F64 d12 d16 d21",
409*f5c631daSSadaf Ebrahimi "Floats_F64_d12_d16_d21",
410*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
411*f5c631daSSadaf Ebrahimi kFloats},
412*f5c631daSSadaf Ebrahimi {{F64, d13, d3, d9},
413*f5c631daSSadaf Ebrahimi "F64 d13 d3 d9",
414*f5c631daSSadaf Ebrahimi "Floats_F64_d13_d3_d9",
415*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
416*f5c631daSSadaf Ebrahimi kFloats},
417*f5c631daSSadaf Ebrahimi {{F64, d14, d15, d9},
418*f5c631daSSadaf Ebrahimi "F64 d14 d15 d9",
419*f5c631daSSadaf Ebrahimi "Floats_F64_d14_d15_d9",
420*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
421*f5c631daSSadaf Ebrahimi kFloats},
422*f5c631daSSadaf Ebrahimi {{F64, d23, d3, d9},
423*f5c631daSSadaf Ebrahimi "F64 d23 d3 d9",
424*f5c631daSSadaf Ebrahimi "Floats_F64_d23_d3_d9",
425*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
426*f5c631daSSadaf Ebrahimi kFloats},
427*f5c631daSSadaf Ebrahimi {{F64, d8, d5, d4},
428*f5c631daSSadaf Ebrahimi "F64 d8 d5 d4",
429*f5c631daSSadaf Ebrahimi "Floats_F64_d8_d5_d4",
430*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
431*f5c631daSSadaf Ebrahimi kFloats},
432*f5c631daSSadaf Ebrahimi {{F64, d28, d10, d8},
433*f5c631daSSadaf Ebrahimi "F64 d28 d10 d8",
434*f5c631daSSadaf Ebrahimi "Floats_F64_d28_d10_d8",
435*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
436*f5c631daSSadaf Ebrahimi kFloats},
437*f5c631daSSadaf Ebrahimi {{F64, d8, d28, d11},
438*f5c631daSSadaf Ebrahimi "F64 d8 d28 d11",
439*f5c631daSSadaf Ebrahimi "Floats_F64_d8_d28_d11",
440*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
441*f5c631daSSadaf Ebrahimi kFloats},
442*f5c631daSSadaf Ebrahimi {{F64, d1, d2, d23},
443*f5c631daSSadaf Ebrahimi "F64 d1 d2 d23",
444*f5c631daSSadaf Ebrahimi "Floats_F64_d1_d2_d23",
445*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
446*f5c631daSSadaf Ebrahimi kFloats},
447*f5c631daSSadaf Ebrahimi {{F64, d27, d26, d30},
448*f5c631daSSadaf Ebrahimi "F64 d27 d26 d30",
449*f5c631daSSadaf Ebrahimi "Floats_F64_d27_d26_d30",
450*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
451*f5c631daSSadaf Ebrahimi kFloats},
452*f5c631daSSadaf Ebrahimi {{F64, d3, d22, d7},
453*f5c631daSSadaf Ebrahimi "F64 d3 d22 d7",
454*f5c631daSSadaf Ebrahimi "Floats_F64_d3_d22_d7",
455*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
456*f5c631daSSadaf Ebrahimi kFloats},
457*f5c631daSSadaf Ebrahimi {{F64, d3, d19, d24},
458*f5c631daSSadaf Ebrahimi "F64 d3 d19 d24",
459*f5c631daSSadaf Ebrahimi "Floats_F64_d3_d19_d24",
460*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
461*f5c631daSSadaf Ebrahimi kFloats},
462*f5c631daSSadaf Ebrahimi {{F64, d27, d30, d22},
463*f5c631daSSadaf Ebrahimi "F64 d27 d30 d22",
464*f5c631daSSadaf Ebrahimi "Floats_F64_d27_d30_d22",
465*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
466*f5c631daSSadaf Ebrahimi kFloats},
467*f5c631daSSadaf Ebrahimi {{F64, d27, d25, d7},
468*f5c631daSSadaf Ebrahimi "F64 d27 d25 d7",
469*f5c631daSSadaf Ebrahimi "Floats_F64_d27_d25_d7",
470*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
471*f5c631daSSadaf Ebrahimi kFloats},
472*f5c631daSSadaf Ebrahimi {{F64, d21, d8, d10},
473*f5c631daSSadaf Ebrahimi "F64 d21 d8 d10",
474*f5c631daSSadaf Ebrahimi "Floats_F64_d21_d8_d10",
475*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
476*f5c631daSSadaf Ebrahimi kFloats},
477*f5c631daSSadaf Ebrahimi {{F64, d28, d17, d14},
478*f5c631daSSadaf Ebrahimi "F64 d28 d17 d14",
479*f5c631daSSadaf Ebrahimi "Floats_F64_d28_d17_d14",
480*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
481*f5c631daSSadaf Ebrahimi kFloats},
482*f5c631daSSadaf Ebrahimi {{F64, d1, d5, d24},
483*f5c631daSSadaf Ebrahimi "F64 d1 d5 d24",
484*f5c631daSSadaf Ebrahimi "Floats_F64_d1_d5_d24",
485*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
486*f5c631daSSadaf Ebrahimi kFloats},
487*f5c631daSSadaf Ebrahimi {{F64, d20, d12, d17},
488*f5c631daSSadaf Ebrahimi "F64 d20 d12 d17",
489*f5c631daSSadaf Ebrahimi "Floats_F64_d20_d12_d17",
490*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
491*f5c631daSSadaf Ebrahimi kFloats},
492*f5c631daSSadaf Ebrahimi {{F64, d30, d29, d10},
493*f5c631daSSadaf Ebrahimi "F64 d30 d29 d10",
494*f5c631daSSadaf Ebrahimi "Floats_F64_d30_d29_d10",
495*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
496*f5c631daSSadaf Ebrahimi kFloats},
497*f5c631daSSadaf Ebrahimi {{F64, d25, d14, d25},
498*f5c631daSSadaf Ebrahimi "F64 d25 d14 d25",
499*f5c631daSSadaf Ebrahimi "Floats_F64_d25_d14_d25",
500*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
501*f5c631daSSadaf Ebrahimi kFloats},
502*f5c631daSSadaf Ebrahimi {{F64, d1, d27, d16},
503*f5c631daSSadaf Ebrahimi "F64 d1 d27 d16",
504*f5c631daSSadaf Ebrahimi "Floats_F64_d1_d27_d16",
505*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
506*f5c631daSSadaf Ebrahimi kFloats},
507*f5c631daSSadaf Ebrahimi {{F64, d6, d28, d7},
508*f5c631daSSadaf Ebrahimi "F64 d6 d28 d7",
509*f5c631daSSadaf Ebrahimi "Floats_F64_d6_d28_d7",
510*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
511*f5c631daSSadaf Ebrahimi kFloats},
512*f5c631daSSadaf Ebrahimi {{F64, d23, d23, d15},
513*f5c631daSSadaf Ebrahimi "F64 d23 d23 d15",
514*f5c631daSSadaf Ebrahimi "Floats_F64_d23_d23_d15",
515*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
516*f5c631daSSadaf Ebrahimi kFloats},
517*f5c631daSSadaf Ebrahimi {{F64, d7, d23, d3},
518*f5c631daSSadaf Ebrahimi "F64 d7 d23 d3",
519*f5c631daSSadaf Ebrahimi "Floats_F64_d7_d23_d3",
520*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
521*f5c631daSSadaf Ebrahimi kFloats},
522*f5c631daSSadaf Ebrahimi {{F64, d7, d23, d16},
523*f5c631daSSadaf Ebrahimi "F64 d7 d23 d16",
524*f5c631daSSadaf Ebrahimi "Floats_F64_d7_d23_d16",
525*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
526*f5c631daSSadaf Ebrahimi kFloats},
527*f5c631daSSadaf Ebrahimi {{F64, d23, d18, d21},
528*f5c631daSSadaf Ebrahimi "F64 d23 d18 d21",
529*f5c631daSSadaf Ebrahimi "Floats_F64_d23_d18_d21",
530*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
531*f5c631daSSadaf Ebrahimi kFloats},
532*f5c631daSSadaf Ebrahimi {{F64, d16, d9, d17},
533*f5c631daSSadaf Ebrahimi "F64 d16 d9 d17",
534*f5c631daSSadaf Ebrahimi "Floats_F64_d16_d9_d17",
535*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
536*f5c631daSSadaf Ebrahimi kFloats},
537*f5c631daSSadaf Ebrahimi {{F64, d5, d21, d9},
538*f5c631daSSadaf Ebrahimi "F64 d5 d21 d9",
539*f5c631daSSadaf Ebrahimi "Floats_F64_d5_d21_d9",
540*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
541*f5c631daSSadaf Ebrahimi kFloats},
542*f5c631daSSadaf Ebrahimi {{F64, d28, d15, d11},
543*f5c631daSSadaf Ebrahimi "F64 d28 d15 d11",
544*f5c631daSSadaf Ebrahimi "Floats_F64_d28_d15_d11",
545*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
546*f5c631daSSadaf Ebrahimi kFloats},
547*f5c631daSSadaf Ebrahimi {{F64, d2, d17, d1},
548*f5c631daSSadaf Ebrahimi "F64 d2 d17 d1",
549*f5c631daSSadaf Ebrahimi "Floats_F64_d2_d17_d1",
550*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
551*f5c631daSSadaf Ebrahimi kFloats},
552*f5c631daSSadaf Ebrahimi {{F64, d25, d29, d17},
553*f5c631daSSadaf Ebrahimi "F64 d25 d29 d17",
554*f5c631daSSadaf Ebrahimi "Floats_F64_d25_d29_d17",
555*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
556*f5c631daSSadaf Ebrahimi kFloats},
557*f5c631daSSadaf Ebrahimi {{F64, d16, d2, d12},
558*f5c631daSSadaf Ebrahimi "F64 d16 d2 d12",
559*f5c631daSSadaf Ebrahimi "Floats_F64_d16_d2_d12",
560*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
561*f5c631daSSadaf Ebrahimi kFloats},
562*f5c631daSSadaf Ebrahimi {{F64, d14, d18, d24},
563*f5c631daSSadaf Ebrahimi "F64 d14 d18 d24",
564*f5c631daSSadaf Ebrahimi "Floats_F64_d14_d18_d24",
565*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
566*f5c631daSSadaf Ebrahimi kFloats},
567*f5c631daSSadaf Ebrahimi {{F64, d3, d4, d25},
568*f5c631daSSadaf Ebrahimi "F64 d3 d4 d25",
569*f5c631daSSadaf Ebrahimi "Floats_F64_d3_d4_d25",
570*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
571*f5c631daSSadaf Ebrahimi kFloats},
572*f5c631daSSadaf Ebrahimi {{F64, d29, d10, d21},
573*f5c631daSSadaf Ebrahimi "F64 d29 d10 d21",
574*f5c631daSSadaf Ebrahimi "Floats_F64_d29_d10_d21",
575*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
576*f5c631daSSadaf Ebrahimi kFloats},
577*f5c631daSSadaf Ebrahimi {{F64, d29, d27, d24},
578*f5c631daSSadaf Ebrahimi "F64 d29 d27 d24",
579*f5c631daSSadaf Ebrahimi "Floats_F64_d29_d27_d24",
580*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
581*f5c631daSSadaf Ebrahimi kFloats},
582*f5c631daSSadaf Ebrahimi {{F64, d30, d19, d23},
583*f5c631daSSadaf Ebrahimi "F64 d30 d19 d23",
584*f5c631daSSadaf Ebrahimi "Floats_F64_d30_d19_d23",
585*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
586*f5c631daSSadaf Ebrahimi kFloats},
587*f5c631daSSadaf Ebrahimi {{F64, d3, d2, d14},
588*f5c631daSSadaf Ebrahimi "F64 d3 d2 d14",
589*f5c631daSSadaf Ebrahimi "Floats_F64_d3_d2_d14",
590*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
591*f5c631daSSadaf Ebrahimi kFloats},
592*f5c631daSSadaf Ebrahimi {{F64, d17, d26, d0},
593*f5c631daSSadaf Ebrahimi "F64 d17 d26 d0",
594*f5c631daSSadaf Ebrahimi "Floats_F64_d17_d26_d0",
595*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
596*f5c631daSSadaf Ebrahimi kFloats},
597*f5c631daSSadaf Ebrahimi {{F64, d17, d28, d8},
598*f5c631daSSadaf Ebrahimi "F64 d17 d28 d8",
599*f5c631daSSadaf Ebrahimi "Floats_F64_d17_d28_d8",
600*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
601*f5c631daSSadaf Ebrahimi kFloats},
602*f5c631daSSadaf Ebrahimi {{F64, d0, d3, d24},
603*f5c631daSSadaf Ebrahimi "F64 d0 d3 d24",
604*f5c631daSSadaf Ebrahimi "Floats_F64_d0_d3_d24",
605*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
606*f5c631daSSadaf Ebrahimi kFloats},
607*f5c631daSSadaf Ebrahimi {{F64, d30, d16, d21},
608*f5c631daSSadaf Ebrahimi "F64 d30 d16 d21",
609*f5c631daSSadaf Ebrahimi "Floats_F64_d30_d16_d21",
610*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
611*f5c631daSSadaf Ebrahimi kFloats},
612*f5c631daSSadaf Ebrahimi {{F64, d18, d24, d3},
613*f5c631daSSadaf Ebrahimi "F64 d18 d24 d3",
614*f5c631daSSadaf Ebrahimi "Floats_F64_d18_d24_d3",
615*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
616*f5c631daSSadaf Ebrahimi kFloats},
617*f5c631daSSadaf Ebrahimi {{F64, d6, d2, d15},
618*f5c631daSSadaf Ebrahimi "F64 d6 d2 d15",
619*f5c631daSSadaf Ebrahimi "Floats_F64_d6_d2_d15",
620*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
621*f5c631daSSadaf Ebrahimi kFloats},
622*f5c631daSSadaf Ebrahimi {{F64, d7, d0, d27},
623*f5c631daSSadaf Ebrahimi "F64 d7 d0 d27",
624*f5c631daSSadaf Ebrahimi "Floats_F64_d7_d0_d27",
625*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
626*f5c631daSSadaf Ebrahimi kFloats},
627*f5c631daSSadaf Ebrahimi {{F64, d0, d9, d27},
628*f5c631daSSadaf Ebrahimi "F64 d0 d9 d27",
629*f5c631daSSadaf Ebrahimi "Floats_F64_d0_d9_d27",
630*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
631*f5c631daSSadaf Ebrahimi kFloats},
632*f5c631daSSadaf Ebrahimi {{F64, d7, d11, d27},
633*f5c631daSSadaf Ebrahimi "F64 d7 d11 d27",
634*f5c631daSSadaf Ebrahimi "Floats_F64_d7_d11_d27",
635*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
636*f5c631daSSadaf Ebrahimi kFloats},
637*f5c631daSSadaf Ebrahimi {{F64, d17, d25, d11},
638*f5c631daSSadaf Ebrahimi "F64 d17 d25 d11",
639*f5c631daSSadaf Ebrahimi "Floats_F64_d17_d25_d11",
640*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
641*f5c631daSSadaf Ebrahimi kFloats},
642*f5c631daSSadaf Ebrahimi {{F64, d31, d9, d22},
643*f5c631daSSadaf Ebrahimi "F64 d31 d9 d22",
644*f5c631daSSadaf Ebrahimi "Floats_F64_d31_d9_d22",
645*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
646*f5c631daSSadaf Ebrahimi kFloats},
647*f5c631daSSadaf Ebrahimi {{F64, d24, d0, d5},
648*f5c631daSSadaf Ebrahimi "F64 d24 d0 d5",
649*f5c631daSSadaf Ebrahimi "Floats_F64_d24_d0_d5",
650*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
651*f5c631daSSadaf Ebrahimi kFloats},
652*f5c631daSSadaf Ebrahimi {{F64, d5, d31, d4},
653*f5c631daSSadaf Ebrahimi "F64 d5 d31 d4",
654*f5c631daSSadaf Ebrahimi "Floats_F64_d5_d31_d4",
655*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
656*f5c631daSSadaf Ebrahimi kFloats},
657*f5c631daSSadaf Ebrahimi {{F64, d16, d24, d2},
658*f5c631daSSadaf Ebrahimi "F64 d16 d24 d2",
659*f5c631daSSadaf Ebrahimi "Floats_F64_d16_d24_d2",
660*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
661*f5c631daSSadaf Ebrahimi kFloats},
662*f5c631daSSadaf Ebrahimi {{F64, d7, d30, d4},
663*f5c631daSSadaf Ebrahimi "F64 d7 d30 d4",
664*f5c631daSSadaf Ebrahimi "Floats_F64_d7_d30_d4",
665*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
666*f5c631daSSadaf Ebrahimi kFloats},
667*f5c631daSSadaf Ebrahimi {{F64, d31, d4, d28},
668*f5c631daSSadaf Ebrahimi "F64 d31 d4 d28",
669*f5c631daSSadaf Ebrahimi "Floats_F64_d31_d4_d28",
670*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
671*f5c631daSSadaf Ebrahimi kFloats},
672*f5c631daSSadaf Ebrahimi {{F64, d10, d31, d13},
673*f5c631daSSadaf Ebrahimi "F64 d10 d31 d13",
674*f5c631daSSadaf Ebrahimi "Floats_F64_d10_d31_d13",
675*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
676*f5c631daSSadaf Ebrahimi kFloats},
677*f5c631daSSadaf Ebrahimi {{F64, d28, d14, d1},
678*f5c631daSSadaf Ebrahimi "F64 d28 d14 d1",
679*f5c631daSSadaf Ebrahimi "Floats_F64_d28_d14_d1",
680*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
681*f5c631daSSadaf Ebrahimi kFloats},
682*f5c631daSSadaf Ebrahimi {{F64, d4, d16, d0},
683*f5c631daSSadaf Ebrahimi "F64 d4 d16 d0",
684*f5c631daSSadaf Ebrahimi "Floats_F64_d4_d16_d0",
685*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
686*f5c631daSSadaf Ebrahimi kFloats},
687*f5c631daSSadaf Ebrahimi {{F64, d19, d26, d15},
688*f5c631daSSadaf Ebrahimi "F64 d19 d26 d15",
689*f5c631daSSadaf Ebrahimi "Floats_F64_d19_d26_d15",
690*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
691*f5c631daSSadaf Ebrahimi kFloats},
692*f5c631daSSadaf Ebrahimi {{F64, d23, d2, d26},
693*f5c631daSSadaf Ebrahimi "F64 d23 d2 d26",
694*f5c631daSSadaf Ebrahimi "Floats_F64_d23_d2_d26",
695*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
696*f5c631daSSadaf Ebrahimi kFloats},
697*f5c631daSSadaf Ebrahimi {{F64, d25, d26, d10},
698*f5c631daSSadaf Ebrahimi "F64 d25 d26 d10",
699*f5c631daSSadaf Ebrahimi "Floats_F64_d25_d26_d10",
700*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
701*f5c631daSSadaf Ebrahimi kFloats},
702*f5c631daSSadaf Ebrahimi {{F64, d0, d19, d0},
703*f5c631daSSadaf Ebrahimi "F64 d0 d19 d0",
704*f5c631daSSadaf Ebrahimi "Floats_F64_d0_d19_d0",
705*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
706*f5c631daSSadaf Ebrahimi kFloats},
707*f5c631daSSadaf Ebrahimi {{F64, d4, d31, d23},
708*f5c631daSSadaf Ebrahimi "F64 d4 d31 d23",
709*f5c631daSSadaf Ebrahimi "Floats_F64_d4_d31_d23",
710*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
711*f5c631daSSadaf Ebrahimi kFloats},
712*f5c631daSSadaf Ebrahimi {{F64, d30, d1, d23},
713*f5c631daSSadaf Ebrahimi "F64 d30 d1 d23",
714*f5c631daSSadaf Ebrahimi "Floats_F64_d30_d1_d23",
715*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
716*f5c631daSSadaf Ebrahimi kFloats},
717*f5c631daSSadaf Ebrahimi {{F64, d14, d5, d20},
718*f5c631daSSadaf Ebrahimi "F64 d14 d5 d20",
719*f5c631daSSadaf Ebrahimi "Floats_F64_d14_d5_d20",
720*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
721*f5c631daSSadaf Ebrahimi kFloats},
722*f5c631daSSadaf Ebrahimi {{F64, d20, d4, d12},
723*f5c631daSSadaf Ebrahimi "F64 d20 d4 d12",
724*f5c631daSSadaf Ebrahimi "Floats_F64_d20_d4_d12",
725*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
726*f5c631daSSadaf Ebrahimi kFloats},
727*f5c631daSSadaf Ebrahimi {{F64, d2, d5, d10},
728*f5c631daSSadaf Ebrahimi "F64 d2 d5 d10",
729*f5c631daSSadaf Ebrahimi "Floats_F64_d2_d5_d10",
730*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
731*f5c631daSSadaf Ebrahimi kFloats},
732*f5c631daSSadaf Ebrahimi {{F64, d14, d29, d3},
733*f5c631daSSadaf Ebrahimi "F64 d14 d29 d3",
734*f5c631daSSadaf Ebrahimi "Floats_F64_d14_d29_d3",
735*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
736*f5c631daSSadaf Ebrahimi kFloats},
737*f5c631daSSadaf Ebrahimi {{F64, d17, d2, d15},
738*f5c631daSSadaf Ebrahimi "F64 d17 d2 d15",
739*f5c631daSSadaf Ebrahimi "Floats_F64_d17_d2_d15",
740*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
741*f5c631daSSadaf Ebrahimi kFloats},
742*f5c631daSSadaf Ebrahimi {{F64, d9, d30, d29},
743*f5c631daSSadaf Ebrahimi "F64 d9 d30 d29",
744*f5c631daSSadaf Ebrahimi "Floats_F64_d9_d30_d29",
745*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
746*f5c631daSSadaf Ebrahimi kFloats},
747*f5c631daSSadaf Ebrahimi {{F64, d30, d12, d30},
748*f5c631daSSadaf Ebrahimi "F64 d30 d12 d30",
749*f5c631daSSadaf Ebrahimi "Floats_F64_d30_d12_d30",
750*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
751*f5c631daSSadaf Ebrahimi kFloats},
752*f5c631daSSadaf Ebrahimi {{F64, d28, d13, d21},
753*f5c631daSSadaf Ebrahimi "F64 d28 d13 d21",
754*f5c631daSSadaf Ebrahimi "Floats_F64_d28_d13_d21",
755*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
756*f5c631daSSadaf Ebrahimi kFloats},
757*f5c631daSSadaf Ebrahimi {{F64, d15, d17, d26},
758*f5c631daSSadaf Ebrahimi "F64 d15 d17 d26",
759*f5c631daSSadaf Ebrahimi "Floats_F64_d15_d17_d26",
760*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
761*f5c631daSSadaf Ebrahimi kFloats},
762*f5c631daSSadaf Ebrahimi {{F64, d30, d18, d9},
763*f5c631daSSadaf Ebrahimi "F64 d30 d18 d9",
764*f5c631daSSadaf Ebrahimi "Floats_F64_d30_d18_d9",
765*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
766*f5c631daSSadaf Ebrahimi kFloats},
767*f5c631daSSadaf Ebrahimi {{F64, d6, d9, d31},
768*f5c631daSSadaf Ebrahimi "F64 d6 d9 d31",
769*f5c631daSSadaf Ebrahimi "Floats_F64_d6_d9_d31",
770*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
771*f5c631daSSadaf Ebrahimi kFloats},
772*f5c631daSSadaf Ebrahimi {{F64, d11, d23, d22},
773*f5c631daSSadaf Ebrahimi "F64 d11 d23 d22",
774*f5c631daSSadaf Ebrahimi "Floats_F64_d11_d23_d22",
775*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
776*f5c631daSSadaf Ebrahimi kFloats},
777*f5c631daSSadaf Ebrahimi {{F64, d26, d23, d29},
778*f5c631daSSadaf Ebrahimi "F64 d26 d23 d29",
779*f5c631daSSadaf Ebrahimi "Floats_F64_d26_d23_d29",
780*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
781*f5c631daSSadaf Ebrahimi kFloats},
782*f5c631daSSadaf Ebrahimi {{F64, d20, d2, d21},
783*f5c631daSSadaf Ebrahimi "F64 d20 d2 d21",
784*f5c631daSSadaf Ebrahimi "Floats_F64_d20_d2_d21",
785*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
786*f5c631daSSadaf Ebrahimi kFloats},
787*f5c631daSSadaf Ebrahimi {{F64, d1, d25, d1},
788*f5c631daSSadaf Ebrahimi "F64 d1 d25 d1",
789*f5c631daSSadaf Ebrahimi "Floats_F64_d1_d25_d1",
790*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
791*f5c631daSSadaf Ebrahimi kFloats},
792*f5c631daSSadaf Ebrahimi {{F64, d1, d13, d15},
793*f5c631daSSadaf Ebrahimi "F64 d1 d13 d15",
794*f5c631daSSadaf Ebrahimi "Floats_F64_d1_d13_d15",
795*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
796*f5c631daSSadaf Ebrahimi kFloats},
797*f5c631daSSadaf Ebrahimi {{F64, d6, d15, d13},
798*f5c631daSSadaf Ebrahimi "F64 d6 d15 d13",
799*f5c631daSSadaf Ebrahimi "Floats_F64_d6_d15_d13",
800*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
801*f5c631daSSadaf Ebrahimi kFloats},
802*f5c631daSSadaf Ebrahimi {{F64, d4, d3, d7},
803*f5c631daSSadaf Ebrahimi "F64 d4 d3 d7",
804*f5c631daSSadaf Ebrahimi "Floats_F64_d4_d3_d7",
805*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
806*f5c631daSSadaf Ebrahimi kFloats},
807*f5c631daSSadaf Ebrahimi {{F64, d8, d16, d18},
808*f5c631daSSadaf Ebrahimi "F64 d8 d16 d18",
809*f5c631daSSadaf Ebrahimi "Floats_F64_d8_d16_d18",
810*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
811*f5c631daSSadaf Ebrahimi kFloats},
812*f5c631daSSadaf Ebrahimi {{F64, d12, d30, d21},
813*f5c631daSSadaf Ebrahimi "F64 d12 d30 d21",
814*f5c631daSSadaf Ebrahimi "Floats_F64_d12_d30_d21",
815*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
816*f5c631daSSadaf Ebrahimi kFloats},
817*f5c631daSSadaf Ebrahimi {{F64, d0, d1, d15},
818*f5c631daSSadaf Ebrahimi "F64 d0 d1 d15",
819*f5c631daSSadaf Ebrahimi "Floats_F64_d0_d1_d15",
820*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
821*f5c631daSSadaf Ebrahimi kFloats},
822*f5c631daSSadaf Ebrahimi {{F64, d6, d11, d4},
823*f5c631daSSadaf Ebrahimi "F64 d6 d11 d4",
824*f5c631daSSadaf Ebrahimi "Floats_F64_d6_d11_d4",
825*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
826*f5c631daSSadaf Ebrahimi kFloats},
827*f5c631daSSadaf Ebrahimi {{F64, d8, d30, d13},
828*f5c631daSSadaf Ebrahimi "F64 d8 d30 d13",
829*f5c631daSSadaf Ebrahimi "Floats_F64_d8_d30_d13",
830*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
831*f5c631daSSadaf Ebrahimi kFloats},
832*f5c631daSSadaf Ebrahimi {{F64, d12, d22, d12},
833*f5c631daSSadaf Ebrahimi "F64 d12 d22 d12",
834*f5c631daSSadaf Ebrahimi "Floats_F64_d12_d22_d12",
835*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
836*f5c631daSSadaf Ebrahimi kFloats},
837*f5c631daSSadaf Ebrahimi {{F64, d9, d7, d13},
838*f5c631daSSadaf Ebrahimi "F64 d9 d7 d13",
839*f5c631daSSadaf Ebrahimi "Floats_F64_d9_d7_d13",
840*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
841*f5c631daSSadaf Ebrahimi kFloats},
842*f5c631daSSadaf Ebrahimi {{F64, d3, d1, d0},
843*f5c631daSSadaf Ebrahimi "F64 d3 d1 d0",
844*f5c631daSSadaf Ebrahimi "Floats_F64_d3_d1_d0",
845*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
846*f5c631daSSadaf Ebrahimi kFloats},
847*f5c631daSSadaf Ebrahimi {{F64, d28, d22, d20},
848*f5c631daSSadaf Ebrahimi "F64 d28 d22 d20",
849*f5c631daSSadaf Ebrahimi "Floats_F64_d28_d22_d20",
850*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
851*f5c631daSSadaf Ebrahimi kFloats},
852*f5c631daSSadaf Ebrahimi {{F64, d22, d20, d9},
853*f5c631daSSadaf Ebrahimi "F64 d22 d20 d9",
854*f5c631daSSadaf Ebrahimi "Floats_F64_d22_d20_d9",
855*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
856*f5c631daSSadaf Ebrahimi kFloats},
857*f5c631daSSadaf Ebrahimi {{F64, d18, d18, d25},
858*f5c631daSSadaf Ebrahimi "F64 d18 d18 d25",
859*f5c631daSSadaf Ebrahimi "Floats_F64_d18_d18_d25",
860*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
861*f5c631daSSadaf Ebrahimi kFloats},
862*f5c631daSSadaf Ebrahimi {{F64, d19, d3, d8},
863*f5c631daSSadaf Ebrahimi "F64 d19 d3 d8",
864*f5c631daSSadaf Ebrahimi "Floats_F64_d19_d3_d8",
865*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloats),
866*f5c631daSSadaf Ebrahimi kFloats},
867*f5c631daSSadaf Ebrahimi {{F64, d25, d21, d21},
868*f5c631daSSadaf Ebrahimi "F64 d25 d21 d21",
869*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d25_d21_d21",
870*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
871*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
872*f5c631daSSadaf Ebrahimi {{F64, d31, d4, d4},
873*f5c631daSSadaf Ebrahimi "F64 d31 d4 d4",
874*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d31_d4_d4",
875*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
876*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
877*f5c631daSSadaf Ebrahimi {{F64, d14, d30, d30},
878*f5c631daSSadaf Ebrahimi "F64 d14 d30 d30",
879*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d14_d30_d30",
880*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
881*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
882*f5c631daSSadaf Ebrahimi {{F64, d11, d27, d27},
883*f5c631daSSadaf Ebrahimi "F64 d11 d27 d27",
884*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d11_d27_d27",
885*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
886*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
887*f5c631daSSadaf Ebrahimi {{F64, d21, d20, d20},
888*f5c631daSSadaf Ebrahimi "F64 d21 d20 d20",
889*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d21_d20_d20",
890*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
891*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
892*f5c631daSSadaf Ebrahimi {{F64, d26, d14, d14},
893*f5c631daSSadaf Ebrahimi "F64 d26 d14 d14",
894*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d26_d14_d14",
895*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
896*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
897*f5c631daSSadaf Ebrahimi {{F64, d10, d1, d1},
898*f5c631daSSadaf Ebrahimi "F64 d10 d1 d1",
899*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d10_d1_d1",
900*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
901*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
902*f5c631daSSadaf Ebrahimi {{F64, d9, d24, d24},
903*f5c631daSSadaf Ebrahimi "F64 d9 d24 d24",
904*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d9_d24_d24",
905*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
906*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
907*f5c631daSSadaf Ebrahimi {{F64, d17, d20, d20},
908*f5c631daSSadaf Ebrahimi "F64 d17 d20 d20",
909*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d17_d20_d20",
910*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
911*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
912*f5c631daSSadaf Ebrahimi {{F64, d15, d13, d13},
913*f5c631daSSadaf Ebrahimi "F64 d15 d13 d13",
914*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d15_d13_d13",
915*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
916*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
917*f5c631daSSadaf Ebrahimi {{F64, d18, d14, d14},
918*f5c631daSSadaf Ebrahimi "F64 d18 d14 d14",
919*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d18_d14_d14",
920*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
921*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
922*f5c631daSSadaf Ebrahimi {{F64, d20, d10, d10},
923*f5c631daSSadaf Ebrahimi "F64 d20 d10 d10",
924*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d20_d10_d10",
925*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
926*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
927*f5c631daSSadaf Ebrahimi {{F64, d23, d27, d27},
928*f5c631daSSadaf Ebrahimi "F64 d23 d27 d27",
929*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d23_d27_d27",
930*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
931*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
932*f5c631daSSadaf Ebrahimi {{F64, d25, d26, d26},
933*f5c631daSSadaf Ebrahimi "F64 d25 d26 d26",
934*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d25_d26_d26",
935*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
936*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
937*f5c631daSSadaf Ebrahimi {{F64, d24, d5, d5},
938*f5c631daSSadaf Ebrahimi "F64 d24 d5 d5",
939*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d24_d5_d5",
940*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
941*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
942*f5c631daSSadaf Ebrahimi {{F64, d15, d10, d10},
943*f5c631daSSadaf Ebrahimi "F64 d15 d10 d10",
944*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d15_d10_d10",
945*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
946*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
947*f5c631daSSadaf Ebrahimi {{F64, d0, d26, d26},
948*f5c631daSSadaf Ebrahimi "F64 d0 d26 d26",
949*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d0_d26_d26",
950*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
951*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
952*f5c631daSSadaf Ebrahimi {{F64, d22, d23, d23},
953*f5c631daSSadaf Ebrahimi "F64 d22 d23 d23",
954*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d22_d23_d23",
955*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
956*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
957*f5c631daSSadaf Ebrahimi {{F64, d18, d29, d29},
958*f5c631daSSadaf Ebrahimi "F64 d18 d29 d29",
959*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d18_d29_d29",
960*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
961*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
962*f5c631daSSadaf Ebrahimi {{F64, d27, d25, d25},
963*f5c631daSSadaf Ebrahimi "F64 d27 d25 d25",
964*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d27_d25_d25",
965*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
966*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
967*f5c631daSSadaf Ebrahimi {{F64, d15, d15, d15},
968*f5c631daSSadaf Ebrahimi "F64 d15 d15 d15",
969*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d15_d15_d15",
970*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
971*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
972*f5c631daSSadaf Ebrahimi {{F64, d17, d5, d5},
973*f5c631daSSadaf Ebrahimi "F64 d17 d5 d5",
974*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d17_d5_d5",
975*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
976*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
977*f5c631daSSadaf Ebrahimi {{F64, d1, d22, d22},
978*f5c631daSSadaf Ebrahimi "F64 d1 d22 d22",
979*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d1_d22_d22",
980*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
981*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
982*f5c631daSSadaf Ebrahimi {{F64, d20, d29, d29},
983*f5c631daSSadaf Ebrahimi "F64 d20 d29 d29",
984*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d20_d29_d29",
985*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
986*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
987*f5c631daSSadaf Ebrahimi {{F64, d7, d26, d26},
988*f5c631daSSadaf Ebrahimi "F64 d7 d26 d26",
989*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d7_d26_d26",
990*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
991*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
992*f5c631daSSadaf Ebrahimi {{F64, d5, d19, d19},
993*f5c631daSSadaf Ebrahimi "F64 d5 d19 d19",
994*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d5_d19_d19",
995*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
996*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
997*f5c631daSSadaf Ebrahimi {{F64, d19, d13, d13},
998*f5c631daSSadaf Ebrahimi "F64 d19 d13 d13",
999*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d19_d13_d13",
1000*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1001*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1002*f5c631daSSadaf Ebrahimi {{F64, d23, d13, d13},
1003*f5c631daSSadaf Ebrahimi "F64 d23 d13 d13",
1004*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d23_d13_d13",
1005*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1006*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1007*f5c631daSSadaf Ebrahimi {{F64, d0, d20, d20},
1008*f5c631daSSadaf Ebrahimi "F64 d0 d20 d20",
1009*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d0_d20_d20",
1010*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1011*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1012*f5c631daSSadaf Ebrahimi {{F64, d19, d26, d26},
1013*f5c631daSSadaf Ebrahimi "F64 d19 d26 d26",
1014*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d19_d26_d26",
1015*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1016*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1017*f5c631daSSadaf Ebrahimi {{F64, d7, d15, d15},
1018*f5c631daSSadaf Ebrahimi "F64 d7 d15 d15",
1019*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d7_d15_d15",
1020*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1021*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1022*f5c631daSSadaf Ebrahimi {{F64, d1, d6, d6},
1023*f5c631daSSadaf Ebrahimi "F64 d1 d6 d6",
1024*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d1_d6_d6",
1025*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1026*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1027*f5c631daSSadaf Ebrahimi {{F64, d3, d25, d25},
1028*f5c631daSSadaf Ebrahimi "F64 d3 d25 d25",
1029*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d3_d25_d25",
1030*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1031*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1032*f5c631daSSadaf Ebrahimi {{F64, d11, d11, d11},
1033*f5c631daSSadaf Ebrahimi "F64 d11 d11 d11",
1034*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d11_d11_d11",
1035*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1036*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1037*f5c631daSSadaf Ebrahimi {{F64, d10, d28, d28},
1038*f5c631daSSadaf Ebrahimi "F64 d10 d28 d28",
1039*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d10_d28_d28",
1040*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1041*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1042*f5c631daSSadaf Ebrahimi {{F64, d20, d13, d13},
1043*f5c631daSSadaf Ebrahimi "F64 d20 d13 d13",
1044*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d20_d13_d13",
1045*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1046*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1047*f5c631daSSadaf Ebrahimi {{F64, d1, d24, d24},
1048*f5c631daSSadaf Ebrahimi "F64 d1 d24 d24",
1049*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d1_d24_d24",
1050*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1051*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1052*f5c631daSSadaf Ebrahimi {{F64, d27, d6, d6},
1053*f5c631daSSadaf Ebrahimi "F64 d27 d6 d6",
1054*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d27_d6_d6",
1055*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1056*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1057*f5c631daSSadaf Ebrahimi {{F64, d30, d29, d29},
1058*f5c631daSSadaf Ebrahimi "F64 d30 d29 d29",
1059*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d30_d29_d29",
1060*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1061*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1062*f5c631daSSadaf Ebrahimi {{F64, d31, d14, d14},
1063*f5c631daSSadaf Ebrahimi "F64 d31 d14 d14",
1064*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d31_d14_d14",
1065*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1066*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1067*f5c631daSSadaf Ebrahimi {{F64, d25, d13, d13},
1068*f5c631daSSadaf Ebrahimi "F64 d25 d13 d13",
1069*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d25_d13_d13",
1070*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1071*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1072*f5c631daSSadaf Ebrahimi {{F64, d21, d16, d16},
1073*f5c631daSSadaf Ebrahimi "F64 d21 d16 d16",
1074*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d21_d16_d16",
1075*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1076*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1077*f5c631daSSadaf Ebrahimi {{F64, d12, d26, d26},
1078*f5c631daSSadaf Ebrahimi "F64 d12 d26 d26",
1079*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d12_d26_d26",
1080*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1081*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1082*f5c631daSSadaf Ebrahimi {{F64, d2, d10, d10},
1083*f5c631daSSadaf Ebrahimi "F64 d2 d10 d10",
1084*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d2_d10_d10",
1085*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1086*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1087*f5c631daSSadaf Ebrahimi {{F64, d1, d5, d5},
1088*f5c631daSSadaf Ebrahimi "F64 d1 d5 d5",
1089*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d1_d5_d5",
1090*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1091*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1092*f5c631daSSadaf Ebrahimi {{F64, d26, d10, d10},
1093*f5c631daSSadaf Ebrahimi "F64 d26 d10 d10",
1094*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d26_d10_d10",
1095*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1096*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1097*f5c631daSSadaf Ebrahimi {{F64, d21, d22, d22},
1098*f5c631daSSadaf Ebrahimi "F64 d21 d22 d22",
1099*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d21_d22_d22",
1100*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1101*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1102*f5c631daSSadaf Ebrahimi {{F64, d2, d15, d15},
1103*f5c631daSSadaf Ebrahimi "F64 d2 d15 d15",
1104*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d2_d15_d15",
1105*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1106*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1107*f5c631daSSadaf Ebrahimi {{F64, d30, d27, d27},
1108*f5c631daSSadaf Ebrahimi "F64 d30 d27 d27",
1109*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d30_d27_d27",
1110*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1111*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1112*f5c631daSSadaf Ebrahimi {{F64, d17, d4, d4},
1113*f5c631daSSadaf Ebrahimi "F64 d17 d4 d4",
1114*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d17_d4_d4",
1115*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1116*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1117*f5c631daSSadaf Ebrahimi {{F64, d0, d8, d8},
1118*f5c631daSSadaf Ebrahimi "F64 d0 d8 d8",
1119*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d0_d8_d8",
1120*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1121*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1122*f5c631daSSadaf Ebrahimi {{F64, d27, d28, d28},
1123*f5c631daSSadaf Ebrahimi "F64 d27 d28 d28",
1124*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d27_d28_d28",
1125*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1126*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1127*f5c631daSSadaf Ebrahimi {{F64, d10, d10, d10},
1128*f5c631daSSadaf Ebrahimi "F64 d10 d10 d10",
1129*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d10_d10_d10",
1130*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1131*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1132*f5c631daSSadaf Ebrahimi {{F64, d10, d17, d17},
1133*f5c631daSSadaf Ebrahimi "F64 d10 d17 d17",
1134*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d10_d17_d17",
1135*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1136*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1137*f5c631daSSadaf Ebrahimi {{F64, d18, d16, d16},
1138*f5c631daSSadaf Ebrahimi "F64 d18 d16 d16",
1139*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d18_d16_d16",
1140*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1141*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1142*f5c631daSSadaf Ebrahimi {{F64, d3, d20, d20},
1143*f5c631daSSadaf Ebrahimi "F64 d3 d20 d20",
1144*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d3_d20_d20",
1145*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1146*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1147*f5c631daSSadaf Ebrahimi {{F64, d0, d28, d28},
1148*f5c631daSSadaf Ebrahimi "F64 d0 d28 d28",
1149*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d0_d28_d28",
1150*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1151*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1152*f5c631daSSadaf Ebrahimi {{F64, d2, d27, d27},
1153*f5c631daSSadaf Ebrahimi "F64 d2 d27 d27",
1154*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d2_d27_d27",
1155*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1156*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1157*f5c631daSSadaf Ebrahimi {{F64, d12, d20, d20},
1158*f5c631daSSadaf Ebrahimi "F64 d12 d20 d20",
1159*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d12_d20_d20",
1160*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1161*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1162*f5c631daSSadaf Ebrahimi {{F64, d9, d22, d22},
1163*f5c631daSSadaf Ebrahimi "F64 d9 d22 d22",
1164*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d9_d22_d22",
1165*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1166*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1167*f5c631daSSadaf Ebrahimi {{F64, d10, d4, d4},
1168*f5c631daSSadaf Ebrahimi "F64 d10 d4 d4",
1169*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d10_d4_d4",
1170*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1171*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1172*f5c631daSSadaf Ebrahimi {{F64, d8, d10, d10},
1173*f5c631daSSadaf Ebrahimi "F64 d8 d10 d10",
1174*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d8_d10_d10",
1175*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1176*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1177*f5c631daSSadaf Ebrahimi {{F64, d26, d5, d5},
1178*f5c631daSSadaf Ebrahimi "F64 d26 d5 d5",
1179*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d26_d5_d5",
1180*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1181*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1182*f5c631daSSadaf Ebrahimi {{F64, d7, d20, d20},
1183*f5c631daSSadaf Ebrahimi "F64 d7 d20 d20",
1184*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d7_d20_d20",
1185*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1186*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1187*f5c631daSSadaf Ebrahimi {{F64, d21, d24, d24},
1188*f5c631daSSadaf Ebrahimi "F64 d21 d24 d24",
1189*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d21_d24_d24",
1190*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1191*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1192*f5c631daSSadaf Ebrahimi {{F64, d29, d9, d9},
1193*f5c631daSSadaf Ebrahimi "F64 d29 d9 d9",
1194*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d29_d9_d9",
1195*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1196*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1197*f5c631daSSadaf Ebrahimi {{F64, d20, d14, d14},
1198*f5c631daSSadaf Ebrahimi "F64 d20 d14 d14",
1199*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d20_d14_d14",
1200*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1201*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1202*f5c631daSSadaf Ebrahimi {{F64, d18, d30, d30},
1203*f5c631daSSadaf Ebrahimi "F64 d18 d30 d30",
1204*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d18_d30_d30",
1205*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1206*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1207*f5c631daSSadaf Ebrahimi {{F64, d15, d14, d14},
1208*f5c631daSSadaf Ebrahimi "F64 d15 d14 d14",
1209*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d15_d14_d14",
1210*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1211*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1212*f5c631daSSadaf Ebrahimi {{F64, d31, d21, d21},
1213*f5c631daSSadaf Ebrahimi "F64 d31 d21 d21",
1214*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d31_d21_d21",
1215*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1216*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1217*f5c631daSSadaf Ebrahimi {{F64, d20, d22, d22},
1218*f5c631daSSadaf Ebrahimi "F64 d20 d22 d22",
1219*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d20_d22_d22",
1220*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1221*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1222*f5c631daSSadaf Ebrahimi {{F64, d13, d5, d5},
1223*f5c631daSSadaf Ebrahimi "F64 d13 d5 d5",
1224*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d13_d5_d5",
1225*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1226*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1227*f5c631daSSadaf Ebrahimi {{F64, d28, d14, d14},
1228*f5c631daSSadaf Ebrahimi "F64 d28 d14 d14",
1229*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d28_d14_d14",
1230*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1231*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1232*f5c631daSSadaf Ebrahimi {{F64, d21, d25, d25},
1233*f5c631daSSadaf Ebrahimi "F64 d21 d25 d25",
1234*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d21_d25_d25",
1235*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1236*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1237*f5c631daSSadaf Ebrahimi {{F64, d23, d29, d29},
1238*f5c631daSSadaf Ebrahimi "F64 d23 d29 d29",
1239*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d23_d29_d29",
1240*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1241*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1242*f5c631daSSadaf Ebrahimi {{F64, d19, d17, d17},
1243*f5c631daSSadaf Ebrahimi "F64 d19 d17 d17",
1244*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d19_d17_d17",
1245*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1246*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1247*f5c631daSSadaf Ebrahimi {{F64, d30, d21, d21},
1248*f5c631daSSadaf Ebrahimi "F64 d30 d21 d21",
1249*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d30_d21_d21",
1250*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1251*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1252*f5c631daSSadaf Ebrahimi {{F64, d6, d9, d9},
1253*f5c631daSSadaf Ebrahimi "F64 d6 d9 d9",
1254*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d6_d9_d9",
1255*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1256*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1257*f5c631daSSadaf Ebrahimi {{F64, d22, d27, d27},
1258*f5c631daSSadaf Ebrahimi "F64 d22 d27 d27",
1259*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d22_d27_d27",
1260*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1261*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1262*f5c631daSSadaf Ebrahimi {{F64, d9, d25, d25},
1263*f5c631daSSadaf Ebrahimi "F64 d9 d25 d25",
1264*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d9_d25_d25",
1265*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1266*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1267*f5c631daSSadaf Ebrahimi {{F64, d12, d22, d22},
1268*f5c631daSSadaf Ebrahimi "F64 d12 d22 d22",
1269*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d12_d22_d22",
1270*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1271*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1272*f5c631daSSadaf Ebrahimi {{F64, d12, d9, d9},
1273*f5c631daSSadaf Ebrahimi "F64 d12 d9 d9",
1274*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d12_d9_d9",
1275*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1276*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1277*f5c631daSSadaf Ebrahimi {{F64, d0, d27, d27},
1278*f5c631daSSadaf Ebrahimi "F64 d0 d27 d27",
1279*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d0_d27_d27",
1280*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1281*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1282*f5c631daSSadaf Ebrahimi {{F64, d2, d12, d12},
1283*f5c631daSSadaf Ebrahimi "F64 d2 d12 d12",
1284*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d2_d12_d12",
1285*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1286*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1287*f5c631daSSadaf Ebrahimi {{F64, d27, d29, d29},
1288*f5c631daSSadaf Ebrahimi "F64 d27 d29 d29",
1289*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d27_d29_d29",
1290*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1291*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1292*f5c631daSSadaf Ebrahimi {{F64, d14, d4, d4},
1293*f5c631daSSadaf Ebrahimi "F64 d14 d4 d4",
1294*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d14_d4_d4",
1295*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1296*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1297*f5c631daSSadaf Ebrahimi {{F64, d17, d25, d25},
1298*f5c631daSSadaf Ebrahimi "F64 d17 d25 d25",
1299*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d17_d25_d25",
1300*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1301*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1302*f5c631daSSadaf Ebrahimi {{F64, d19, d11, d11},
1303*f5c631daSSadaf Ebrahimi "F64 d19 d11 d11",
1304*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d19_d11_d11",
1305*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1306*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1307*f5c631daSSadaf Ebrahimi {{F64, d2, d6, d6},
1308*f5c631daSSadaf Ebrahimi "F64 d2 d6 d6",
1309*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d2_d6_d6",
1310*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1311*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1312*f5c631daSSadaf Ebrahimi {{F64, d26, d24, d24},
1313*f5c631daSSadaf Ebrahimi "F64 d26 d24 d24",
1314*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d26_d24_d24",
1315*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1316*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1317*f5c631daSSadaf Ebrahimi {{F64, d17, d16, d16},
1318*f5c631daSSadaf Ebrahimi "F64 d17 d16 d16",
1319*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d17_d16_d16",
1320*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1321*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1322*f5c631daSSadaf Ebrahimi {{F64, d14, d26, d26},
1323*f5c631daSSadaf Ebrahimi "F64 d14 d26 d26",
1324*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d14_d26_d26",
1325*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1326*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1327*f5c631daSSadaf Ebrahimi {{F64, d18, d20, d20},
1328*f5c631daSSadaf Ebrahimi "F64 d18 d20 d20",
1329*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d18_d20_d20",
1330*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1331*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1332*f5c631daSSadaf Ebrahimi {{F64, d24, d14, d14},
1333*f5c631daSSadaf Ebrahimi "F64 d24 d14 d14",
1334*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d24_d14_d14",
1335*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1336*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1337*f5c631daSSadaf Ebrahimi {{F64, d8, d14, d14},
1338*f5c631daSSadaf Ebrahimi "F64 d8 d14 d14",
1339*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d8_d14_d14",
1340*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1341*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1342*f5c631daSSadaf Ebrahimi {{F64, d13, d9, d9},
1343*f5c631daSSadaf Ebrahimi "F64 d13 d9 d9",
1344*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d13_d9_d9",
1345*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1346*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1347*f5c631daSSadaf Ebrahimi {{F64, d18, d31, d31},
1348*f5c631daSSadaf Ebrahimi "F64 d18 d31 d31",
1349*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d18_d31_d31",
1350*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1351*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1352*f5c631daSSadaf Ebrahimi {{F64, d7, d22, d22},
1353*f5c631daSSadaf Ebrahimi "F64 d7 d22 d22",
1354*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d7_d22_d22",
1355*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1356*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1357*f5c631daSSadaf Ebrahimi {{F64, d29, d10, d10},
1358*f5c631daSSadaf Ebrahimi "F64 d29 d10 d10",
1359*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d29_d10_d10",
1360*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1361*f5c631daSSadaf Ebrahimi kFloatsSameRegisters},
1362*f5c631daSSadaf Ebrahimi {{F64, d5, d29, d29},
1363*f5c631daSSadaf Ebrahimi "F64 d5 d29 d29",
1364*f5c631daSSadaf Ebrahimi "FloatsSameRegisters_F64_d5_d29_d29",
1365*f5c631daSSadaf Ebrahimi ARRAY_SIZE(kFloatsSameRegisters),
1366*f5c631daSSadaf Ebrahimi kFloatsSameRegisters}};
1367*f5c631daSSadaf Ebrahimi
1368*f5c631daSSadaf Ebrahimi // We record all inputs to the instructions as outputs. This way, we also check
1369*f5c631daSSadaf Ebrahimi // that what shouldn't change didn't change.
1370*f5c631daSSadaf Ebrahimi struct TestResult {
1371*f5c631daSSadaf Ebrahimi size_t output_size;
1372*f5c631daSSadaf Ebrahimi const Inputs* outputs;
1373*f5c631daSSadaf Ebrahimi };
1374*f5c631daSSadaf Ebrahimi
1375*f5c631daSSadaf Ebrahimi // These headers each contain an array of `TestResult` with the reference output
1376*f5c631daSSadaf Ebrahimi // values. The reference arrays are names `kReference{mnemonic}`.
1377*f5c631daSSadaf Ebrahimi #include "aarch32/traces/simulator-cond-dt-drt-drd-drn-drm-float-f64-vadd-a32.h"
1378*f5c631daSSadaf Ebrahimi #include "aarch32/traces/simulator-cond-dt-drt-drd-drn-drm-float-f64-vsub-a32.h"
1379*f5c631daSSadaf Ebrahimi
1380*f5c631daSSadaf Ebrahimi
1381*f5c631daSSadaf Ebrahimi // The maximum number of errors to report in detail for each test.
1382*f5c631daSSadaf Ebrahimi const unsigned kErrorReportLimit = 8;
1383*f5c631daSSadaf Ebrahimi
1384*f5c631daSSadaf Ebrahimi typedef void (MacroAssembler::*Fn)(DataType dt,
1385*f5c631daSSadaf Ebrahimi DRegister rd,
1386*f5c631daSSadaf Ebrahimi DRegister rn,
1387*f5c631daSSadaf Ebrahimi DRegister rm);
1388*f5c631daSSadaf Ebrahimi
TestHelper(Fn instruction,const char * mnemonic,const TestResult reference[])1389*f5c631daSSadaf Ebrahimi void TestHelper(Fn instruction,
1390*f5c631daSSadaf Ebrahimi const char* mnemonic,
1391*f5c631daSSadaf Ebrahimi const TestResult reference[]) {
1392*f5c631daSSadaf Ebrahimi SETUP();
1393*f5c631daSSadaf Ebrahimi masm.UseA32();
1394*f5c631daSSadaf Ebrahimi START();
1395*f5c631daSSadaf Ebrahimi
1396*f5c631daSSadaf Ebrahimi // Data to compare to `reference`.
1397*f5c631daSSadaf Ebrahimi TestResult* results[ARRAY_SIZE(kTests)];
1398*f5c631daSSadaf Ebrahimi
1399*f5c631daSSadaf Ebrahimi // Test cases for memory bound instructions may allocate a buffer and save its
1400*f5c631daSSadaf Ebrahimi // address in this array.
1401*f5c631daSSadaf Ebrahimi byte* scratch_memory_buffers[ARRAY_SIZE(kTests)];
1402*f5c631daSSadaf Ebrahimi
1403*f5c631daSSadaf Ebrahimi // Generate a loop for each element in `kTests`. Each loop tests one specific
1404*f5c631daSSadaf Ebrahimi // instruction.
1405*f5c631daSSadaf Ebrahimi for (unsigned i = 0; i < ARRAY_SIZE(kTests); i++) {
1406*f5c631daSSadaf Ebrahimi // Allocate results on the heap for this test.
1407*f5c631daSSadaf Ebrahimi results[i] = new TestResult;
1408*f5c631daSSadaf Ebrahimi results[i]->outputs = new Inputs[kTests[i].input_size];
1409*f5c631daSSadaf Ebrahimi results[i]->output_size = kTests[i].input_size;
1410*f5c631daSSadaf Ebrahimi
1411*f5c631daSSadaf Ebrahimi size_t input_stride = sizeof(kTests[i].inputs[0]) * kTests[i].input_size;
1412*f5c631daSSadaf Ebrahimi VIXL_ASSERT(IsUint32(input_stride));
1413*f5c631daSSadaf Ebrahimi
1414*f5c631daSSadaf Ebrahimi scratch_memory_buffers[i] = NULL;
1415*f5c631daSSadaf Ebrahimi
1416*f5c631daSSadaf Ebrahimi Label loop;
1417*f5c631daSSadaf Ebrahimi UseScratchRegisterScope scratch_registers(&masm);
1418*f5c631daSSadaf Ebrahimi // Include all registers from r0 ro r12.
1419*f5c631daSSadaf Ebrahimi scratch_registers.Include(RegisterList(0x1fff));
1420*f5c631daSSadaf Ebrahimi
1421*f5c631daSSadaf Ebrahimi // Values to pass to the macro-assembler.
1422*f5c631daSSadaf Ebrahimi DataType dt = kTests[i].operands.dt;
1423*f5c631daSSadaf Ebrahimi DRegister rd = kTests[i].operands.rd;
1424*f5c631daSSadaf Ebrahimi DRegister rn = kTests[i].operands.rn;
1425*f5c631daSSadaf Ebrahimi DRegister rm = kTests[i].operands.rm;
1426*f5c631daSSadaf Ebrahimi
1427*f5c631daSSadaf Ebrahimi // Allocate reserved registers for our own use.
1428*f5c631daSSadaf Ebrahimi Register input_ptr = scratch_registers.Acquire();
1429*f5c631daSSadaf Ebrahimi Register input_end = scratch_registers.Acquire();
1430*f5c631daSSadaf Ebrahimi Register result_ptr = scratch_registers.Acquire();
1431*f5c631daSSadaf Ebrahimi
1432*f5c631daSSadaf Ebrahimi // Initialize `input_ptr` to the first element and `input_end` the address
1433*f5c631daSSadaf Ebrahimi // after the array.
1434*f5c631daSSadaf Ebrahimi __ Mov(input_ptr, Operand::From(kTests[i].inputs));
1435*f5c631daSSadaf Ebrahimi __ Add(input_end, input_ptr, static_cast<uint32_t>(input_stride));
1436*f5c631daSSadaf Ebrahimi __ Mov(result_ptr, Operand::From(results[i]->outputs));
1437*f5c631daSSadaf Ebrahimi __ Bind(&loop);
1438*f5c631daSSadaf Ebrahimi
1439*f5c631daSSadaf Ebrahimi {
1440*f5c631daSSadaf Ebrahimi UseScratchRegisterScope temp_registers(&masm);
1441*f5c631daSSadaf Ebrahimi Register fpsr_bits = temp_registers.Acquire();
1442*f5c631daSSadaf Ebrahimi __ Ldr(fpsr_bits, MemOperand(input_ptr, offsetof(Inputs, fpscr)));
1443*f5c631daSSadaf Ebrahimi __ Vmsr(FPSCR, fpsr_bits);
1444*f5c631daSSadaf Ebrahimi }
1445*f5c631daSSadaf Ebrahimi __ Vldr(rd, MemOperand(input_ptr, offsetof(Inputs, rd)));
1446*f5c631daSSadaf Ebrahimi __ Vldr(rn, MemOperand(input_ptr, offsetof(Inputs, rn)));
1447*f5c631daSSadaf Ebrahimi __ Vldr(rm, MemOperand(input_ptr, offsetof(Inputs, rm)));
1448*f5c631daSSadaf Ebrahimi
1449*f5c631daSSadaf Ebrahimi (masm.*instruction)(dt, rd, rn, rm);
1450*f5c631daSSadaf Ebrahimi
1451*f5c631daSSadaf Ebrahimi {
1452*f5c631daSSadaf Ebrahimi UseScratchRegisterScope temp_registers(&masm);
1453*f5c631daSSadaf Ebrahimi Register fpsr_bits = temp_registers.Acquire();
1454*f5c631daSSadaf Ebrahimi __ Vmrs(RegisterOrAPSR_nzcv(fpsr_bits.GetCode()), FPSCR);
1455*f5c631daSSadaf Ebrahimi __ Str(fpsr_bits, MemOperand(result_ptr, offsetof(Inputs, fpscr)));
1456*f5c631daSSadaf Ebrahimi }
1457*f5c631daSSadaf Ebrahimi __ Vstr(rd, MemOperand(result_ptr, offsetof(Inputs, rd)));
1458*f5c631daSSadaf Ebrahimi __ Vstr(rn, MemOperand(result_ptr, offsetof(Inputs, rn)));
1459*f5c631daSSadaf Ebrahimi __ Vstr(rm, MemOperand(result_ptr, offsetof(Inputs, rm)));
1460*f5c631daSSadaf Ebrahimi
1461*f5c631daSSadaf Ebrahimi // Advance the result pointer.
1462*f5c631daSSadaf Ebrahimi __ Add(result_ptr, result_ptr, Operand::From(sizeof(kTests[i].inputs[0])));
1463*f5c631daSSadaf Ebrahimi // Loop back until `input_ptr` is lower than `input_base`.
1464*f5c631daSSadaf Ebrahimi __ Add(input_ptr, input_ptr, Operand::From(sizeof(kTests[i].inputs[0])));
1465*f5c631daSSadaf Ebrahimi __ Cmp(input_ptr, input_end);
1466*f5c631daSSadaf Ebrahimi __ B(ne, &loop);
1467*f5c631daSSadaf Ebrahimi }
1468*f5c631daSSadaf Ebrahimi
1469*f5c631daSSadaf Ebrahimi END();
1470*f5c631daSSadaf Ebrahimi
1471*f5c631daSSadaf Ebrahimi RUN();
1472*f5c631daSSadaf Ebrahimi
1473*f5c631daSSadaf Ebrahimi if (Test::generate_test_trace()) {
1474*f5c631daSSadaf Ebrahimi // Print the results.
1475*f5c631daSSadaf Ebrahimi for (size_t i = 0; i < ARRAY_SIZE(kTests); i++) {
1476*f5c631daSSadaf Ebrahimi printf("const Inputs kOutputs_%s_%s[] = {\n",
1477*f5c631daSSadaf Ebrahimi mnemonic,
1478*f5c631daSSadaf Ebrahimi kTests[i].identifier);
1479*f5c631daSSadaf Ebrahimi for (size_t j = 0; j < results[i]->output_size; j++) {
1480*f5c631daSSadaf Ebrahimi printf(" { ");
1481*f5c631daSSadaf Ebrahimi printf("0x%08" PRIx32, results[i]->outputs[j].fpscr);
1482*f5c631daSSadaf Ebrahimi printf(", ");
1483*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64, results[i]->outputs[j].rd);
1484*f5c631daSSadaf Ebrahimi printf(", ");
1485*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64, results[i]->outputs[j].rn);
1486*f5c631daSSadaf Ebrahimi printf(", ");
1487*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64, results[i]->outputs[j].rm);
1488*f5c631daSSadaf Ebrahimi printf(" },\n");
1489*f5c631daSSadaf Ebrahimi }
1490*f5c631daSSadaf Ebrahimi printf("};\n");
1491*f5c631daSSadaf Ebrahimi }
1492*f5c631daSSadaf Ebrahimi printf("const TestResult kReference%s[] = {\n", mnemonic);
1493*f5c631daSSadaf Ebrahimi for (size_t i = 0; i < ARRAY_SIZE(kTests); i++) {
1494*f5c631daSSadaf Ebrahimi printf(" {\n");
1495*f5c631daSSadaf Ebrahimi printf(" ARRAY_SIZE(kOutputs_%s_%s),\n",
1496*f5c631daSSadaf Ebrahimi mnemonic,
1497*f5c631daSSadaf Ebrahimi kTests[i].identifier);
1498*f5c631daSSadaf Ebrahimi printf(" kOutputs_%s_%s,\n", mnemonic, kTests[i].identifier);
1499*f5c631daSSadaf Ebrahimi printf(" },\n");
1500*f5c631daSSadaf Ebrahimi }
1501*f5c631daSSadaf Ebrahimi printf("};\n");
1502*f5c631daSSadaf Ebrahimi } else if (kCheckSimulatorTestResults) {
1503*f5c631daSSadaf Ebrahimi // Check the results.
1504*f5c631daSSadaf Ebrahimi unsigned total_error_count = 0;
1505*f5c631daSSadaf Ebrahimi for (size_t i = 0; i < ARRAY_SIZE(kTests); i++) {
1506*f5c631daSSadaf Ebrahimi bool instruction_has_errors = false;
1507*f5c631daSSadaf Ebrahimi for (size_t j = 0; j < kTests[i].input_size; j++) {
1508*f5c631daSSadaf Ebrahimi uint32_t fpscr = results[i]->outputs[j].fpscr;
1509*f5c631daSSadaf Ebrahimi uint64_t rd = results[i]->outputs[j].rd;
1510*f5c631daSSadaf Ebrahimi uint64_t rn = results[i]->outputs[j].rn;
1511*f5c631daSSadaf Ebrahimi uint64_t rm = results[i]->outputs[j].rm;
1512*f5c631daSSadaf Ebrahimi uint32_t fpscr_input = kTests[i].inputs[j].fpscr;
1513*f5c631daSSadaf Ebrahimi uint64_t rd_input = kTests[i].inputs[j].rd;
1514*f5c631daSSadaf Ebrahimi uint64_t rn_input = kTests[i].inputs[j].rn;
1515*f5c631daSSadaf Ebrahimi uint64_t rm_input = kTests[i].inputs[j].rm;
1516*f5c631daSSadaf Ebrahimi uint32_t fpscr_ref = reference[i].outputs[j].fpscr;
1517*f5c631daSSadaf Ebrahimi uint64_t rd_ref = reference[i].outputs[j].rd;
1518*f5c631daSSadaf Ebrahimi uint64_t rn_ref = reference[i].outputs[j].rn;
1519*f5c631daSSadaf Ebrahimi uint64_t rm_ref = reference[i].outputs[j].rm;
1520*f5c631daSSadaf Ebrahimi
1521*f5c631daSSadaf Ebrahimi if (((fpscr != fpscr_ref) || (rd != rd_ref) || (rn != rn_ref) ||
1522*f5c631daSSadaf Ebrahimi (rm != rm_ref)) &&
1523*f5c631daSSadaf Ebrahimi (++total_error_count <= kErrorReportLimit)) {
1524*f5c631daSSadaf Ebrahimi // Print the instruction once even if it triggered multiple failures.
1525*f5c631daSSadaf Ebrahimi if (!instruction_has_errors) {
1526*f5c631daSSadaf Ebrahimi printf("Error(s) when testing \"%s %s\":\n",
1527*f5c631daSSadaf Ebrahimi mnemonic,
1528*f5c631daSSadaf Ebrahimi kTests[i].operands_description);
1529*f5c631daSSadaf Ebrahimi instruction_has_errors = true;
1530*f5c631daSSadaf Ebrahimi }
1531*f5c631daSSadaf Ebrahimi // Print subsequent errors.
1532*f5c631daSSadaf Ebrahimi printf(" Input: ");
1533*f5c631daSSadaf Ebrahimi printf("0x%08" PRIx32, fpscr_input);
1534*f5c631daSSadaf Ebrahimi printf(", ");
1535*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64 "(%g)", rd_input, RawbitsToDouble(rd_input));
1536*f5c631daSSadaf Ebrahimi printf(", ");
1537*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64 "(%g)", rn_input, RawbitsToDouble(rn_input));
1538*f5c631daSSadaf Ebrahimi printf(", ");
1539*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64 "(%g)", rm_input, RawbitsToDouble(rm_input));
1540*f5c631daSSadaf Ebrahimi printf("\n");
1541*f5c631daSSadaf Ebrahimi printf(" Expected: ");
1542*f5c631daSSadaf Ebrahimi printf("0x%08" PRIx32, fpscr_ref);
1543*f5c631daSSadaf Ebrahimi printf(", ");
1544*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64 "(%g)", rd_ref, RawbitsToDouble(rd_ref));
1545*f5c631daSSadaf Ebrahimi printf(", ");
1546*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64 "(%g)", rn_ref, RawbitsToDouble(rn_ref));
1547*f5c631daSSadaf Ebrahimi printf(", ");
1548*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64 "(%g)", rm_ref, RawbitsToDouble(rm_ref));
1549*f5c631daSSadaf Ebrahimi printf("\n");
1550*f5c631daSSadaf Ebrahimi printf(" Found: ");
1551*f5c631daSSadaf Ebrahimi printf("0x%08" PRIx32, fpscr);
1552*f5c631daSSadaf Ebrahimi printf(", ");
1553*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64 "(%g)", rd, RawbitsToDouble(rd));
1554*f5c631daSSadaf Ebrahimi printf(", ");
1555*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64 "(%g)", rn, RawbitsToDouble(rn));
1556*f5c631daSSadaf Ebrahimi printf(", ");
1557*f5c631daSSadaf Ebrahimi printf("0x%016" PRIx64 "(%g)", rm, RawbitsToDouble(rm));
1558*f5c631daSSadaf Ebrahimi printf("\n\n");
1559*f5c631daSSadaf Ebrahimi }
1560*f5c631daSSadaf Ebrahimi }
1561*f5c631daSSadaf Ebrahimi }
1562*f5c631daSSadaf Ebrahimi
1563*f5c631daSSadaf Ebrahimi if (total_error_count > kErrorReportLimit) {
1564*f5c631daSSadaf Ebrahimi printf("%u other errors follow.\n",
1565*f5c631daSSadaf Ebrahimi total_error_count - kErrorReportLimit);
1566*f5c631daSSadaf Ebrahimi }
1567*f5c631daSSadaf Ebrahimi VIXL_CHECK(total_error_count == 0);
1568*f5c631daSSadaf Ebrahimi } else {
1569*f5c631daSSadaf Ebrahimi VIXL_WARNING("Assembled the code, but did not run anything.\n");
1570*f5c631daSSadaf Ebrahimi }
1571*f5c631daSSadaf Ebrahimi
1572*f5c631daSSadaf Ebrahimi for (size_t i = 0; i < ARRAY_SIZE(kTests); i++) {
1573*f5c631daSSadaf Ebrahimi delete[] results[i]->outputs;
1574*f5c631daSSadaf Ebrahimi delete results[i];
1575*f5c631daSSadaf Ebrahimi delete[] scratch_memory_buffers[i];
1576*f5c631daSSadaf Ebrahimi }
1577*f5c631daSSadaf Ebrahimi }
1578*f5c631daSSadaf Ebrahimi
1579*f5c631daSSadaf Ebrahimi // Instantiate tests for each instruction in the list.
1580*f5c631daSSadaf Ebrahimi // TODO: Remove this limitation by having a sandboxing mechanism.
1581*f5c631daSSadaf Ebrahimi #if defined(VIXL_HOST_POINTER_32)
1582*f5c631daSSadaf Ebrahimi #define TEST(mnemonic) \
1583*f5c631daSSadaf Ebrahimi void Test_##mnemonic() { \
1584*f5c631daSSadaf Ebrahimi TestHelper(&MacroAssembler::mnemonic, #mnemonic, kReference##mnemonic); \
1585*f5c631daSSadaf Ebrahimi } \
1586*f5c631daSSadaf Ebrahimi Test test_##mnemonic( \
1587*f5c631daSSadaf Ebrahimi "AARCH32_SIMULATOR_COND_DT_DRT_DRD_DRN_DRM_FLOAT_F64_" #mnemonic "_A32", \
1588*f5c631daSSadaf Ebrahimi &Test_##mnemonic);
1589*f5c631daSSadaf Ebrahimi #else
1590*f5c631daSSadaf Ebrahimi #define TEST(mnemonic) \
1591*f5c631daSSadaf Ebrahimi void Test_##mnemonic() { \
1592*f5c631daSSadaf Ebrahimi VIXL_WARNING("This test can only run on a 32-bit host.\n"); \
1593*f5c631daSSadaf Ebrahimi USE(TestHelper); \
1594*f5c631daSSadaf Ebrahimi } \
1595*f5c631daSSadaf Ebrahimi Test test_##mnemonic( \
1596*f5c631daSSadaf Ebrahimi "AARCH32_SIMULATOR_COND_DT_DRT_DRD_DRN_DRM_FLOAT_F64_" #mnemonic "_A32", \
1597*f5c631daSSadaf Ebrahimi &Test_##mnemonic);
1598*f5c631daSSadaf Ebrahimi #endif
1599*f5c631daSSadaf Ebrahimi
1600*f5c631daSSadaf Ebrahimi FOREACH_INSTRUCTION(TEST)
1601*f5c631daSSadaf Ebrahimi #undef TEST
1602*f5c631daSSadaf Ebrahimi
1603*f5c631daSSadaf Ebrahimi } // namespace
1604*f5c631daSSadaf Ebrahimi #endif
1605*f5c631daSSadaf Ebrahimi
1606*f5c631daSSadaf Ebrahimi } // namespace aarch32
1607*f5c631daSSadaf Ebrahimi } // namespace vixl
1608