1 | //===-------- CSKYTargetParser.cpp - CSKY Target Parser -------------------===// |
2 | // |
3 | // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
4 | // See https://llvm.org/LICENSE.txt for license information. |
5 | // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
6 | // |
7 | //===----------------------------------------------------------------------===// |
8 | |
9 | #include "llvm/TargetParser/CSKYTargetParser.h" |
10 | #include "llvm/ADT/STLExtras.h" |
11 | #include "llvm/ADT/StringExtras.h" |
12 | #include "llvm/Support/CSKYAttributes.h" |
13 | #include "llvm/Support/FormatVariadic.h" |
14 | #include "llvm/TargetParser/TargetParser.h" |
15 | #include "gtest/gtest.h" |
16 | #include <string> |
17 | |
18 | using namespace llvm; |
19 | |
20 | namespace { |
21 | |
22 | std::string FormatExtensionFlags(uint64_t Flags) { |
23 | std::vector<StringRef> Features; |
24 | |
25 | if (Flags & CSKY::AEK_NONE) |
26 | Features.push_back(x: "none" ); |
27 | CSKY::getExtensionFeatures(Extensions: Flags, Features); |
28 | |
29 | Features.erase(first: std::remove_if(first: Features.begin(), last: Features.end(), |
30 | pred: [](StringRef extension) { |
31 | return extension.starts_with(Prefix: "-" ); |
32 | }), |
33 | last: Features.end()); |
34 | |
35 | return llvm::join(R&: Features, Separator: ", " ); |
36 | } |
37 | |
38 | testing::AssertionResult AssertSameExtensionFlags(const char *m_expr, |
39 | const char *n_expr, |
40 | uint64_t ExpectedFlags, |
41 | uint64_t GotFlags) { |
42 | if (ExpectedFlags == GotFlags) |
43 | return testing::AssertionSuccess(); |
44 | |
45 | return testing::AssertionFailure() |
46 | << llvm::formatv(Fmt: "Expected extension flags: {0} ({1:x})\n" |
47 | " Got extension flags: {2} ({3:x})\n" , |
48 | Vals: FormatExtensionFlags(Flags: ExpectedFlags), Vals&: ExpectedFlags, |
49 | Vals: FormatExtensionFlags(Flags: GotFlags), Vals&: GotFlags); |
50 | } |
51 | |
52 | struct CSKYCPUTestParams { |
53 | CSKYCPUTestParams(StringRef CPUName, StringRef ExpectedArch, |
54 | uint64_t ExpectedFlags) |
55 | : CPUName(CPUName), ExpectedArch(ExpectedArch), |
56 | ExpectedFlags(ExpectedFlags) {} |
57 | |
58 | friend std::ostream &operator<<(std::ostream &os, |
59 | const CSKYCPUTestParams ¶ms) { |
60 | return os << "\"" << params.CPUName.str() << "\", \"" |
61 | << params.ExpectedArch.str() << "\", \"" << params.ExpectedFlags |
62 | << "\"" ; |
63 | } |
64 | |
65 | StringRef CPUName; |
66 | StringRef ExpectedArch; |
67 | uint64_t ExpectedFlags; |
68 | }; |
69 | |
70 | class CSKYCPUTestFixture : public ::testing::TestWithParam<CSKYCPUTestParams> { |
71 | }; |
72 | |
73 | TEST_P(CSKYCPUTestFixture, CSKYCPUTests) { |
74 | auto params = GetParam(); |
75 | |
76 | CSKY::ArchKind AK = CSKY::parseCPUArch(CPU: params.CPUName); |
77 | EXPECT_EQ(params.ExpectedArch, CSKY::getArchName(AK)); |
78 | |
79 | uint64_t default_extensions = CSKY::getDefaultExtensions(CPU: params.CPUName); |
80 | EXPECT_PRED_FORMAT2(AssertSameExtensionFlags, params.ExpectedFlags, |
81 | default_extensions); |
82 | } |
83 | |
84 | // Note that we include CSKY::AEK_NONE even when there are other extensions |
85 | // we expect. This is because the default extensions for a CPU are the sum |
86 | // of the default extensions for its architecture and for the CPU. |
87 | // So if a CPU has no extra extensions, it adds AEK_NONE. |
88 | INSTANTIATE_TEST_SUITE_P( |
89 | CSKYCPUTests, CSKYCPUTestFixture, |
90 | ::testing::Values( |
91 | |
92 | CSKYCPUTestParams("ck801" , "ck801" , |
93 | CSKY::AEK_NONE | CSKY::MAEK_E1 | CSKY::AEK_TRUST), |
94 | CSKYCPUTestParams("ck801t" , "ck801" , |
95 | CSKY::AEK_NONE | CSKY::MAEK_E1 | CSKY::AEK_TRUST), |
96 | CSKYCPUTestParams("e801" , "ck801" , |
97 | CSKY::AEK_NONE | CSKY::MAEK_E1 | CSKY::AEK_TRUST), |
98 | |
99 | CSKYCPUTestParams("ck802" , "ck802" , |
100 | CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST | |
101 | CSKY::AEK_NVIC), |
102 | CSKYCPUTestParams("ck802t" , "ck802" , |
103 | CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST | |
104 | CSKY::AEK_NVIC), |
105 | CSKYCPUTestParams("ck802j" , "ck802" , |
106 | CSKY::AEK_JAVA | CSKY::MAEK_E2 | CSKY::AEK_TRUST | |
107 | CSKY::AEK_NVIC), |
108 | CSKYCPUTestParams("e802" , "ck802" , |
109 | CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST | |
110 | CSKY::AEK_NVIC), |
111 | CSKYCPUTestParams("e802t" , "ck802" , |
112 | CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST | |
113 | CSKY::AEK_NVIC), |
114 | CSKYCPUTestParams("s802" , "ck802" , |
115 | CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST | |
116 | CSKY::AEK_NVIC), |
117 | CSKYCPUTestParams("s802t" , "ck802" , |
118 | CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST | |
119 | CSKY::AEK_NVIC), |
120 | |
121 | CSKYCPUTestParams("ck803" , "ck803" , |
122 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
123 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
124 | CSKY::AEK_HWDIV), |
125 | CSKYCPUTestParams("ck803h" , "ck803" , |
126 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
127 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
128 | CSKY::AEK_HWDIV), |
129 | CSKYCPUTestParams("ck803t" , "ck803" , |
130 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
131 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
132 | CSKY::AEK_HWDIV), |
133 | CSKYCPUTestParams("ck803ht" , "ck803" , |
134 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
135 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
136 | CSKY::AEK_HWDIV), |
137 | CSKYCPUTestParams("ck803f" , "ck803" , |
138 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
139 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
140 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
141 | CSKY::AEK_HWDIV), |
142 | CSKYCPUTestParams("ck803fh" , "ck803" , |
143 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
144 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
145 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
146 | CSKY::AEK_HWDIV), |
147 | CSKYCPUTestParams("ck803e" , "ck803" , |
148 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
149 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
150 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
151 | CSKYCPUTestParams("ck803eh" , "ck803" , |
152 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
153 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
154 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
155 | CSKYCPUTestParams("ck803et" , "ck803" , |
156 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
157 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
158 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
159 | CSKYCPUTestParams("ck803eht" , "ck803" , |
160 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
161 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
162 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
163 | CSKYCPUTestParams("ck803ef" , "ck803" , |
164 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
165 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
166 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
167 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
168 | CSKY::AEK_HWDIV), |
169 | CSKYCPUTestParams("ck803efh" , "ck803" , |
170 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
171 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
172 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
173 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
174 | CSKY::AEK_HWDIV), |
175 | CSKYCPUTestParams("ck803ft" , "ck803" , |
176 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
177 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
178 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
179 | CSKY::AEK_HWDIV), |
180 | CSKYCPUTestParams("ck803eft" , "ck803" , |
181 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
182 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
183 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
184 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
185 | CSKY::AEK_HWDIV), |
186 | CSKYCPUTestParams("ck803efht" , "ck803" , |
187 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
188 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
189 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
190 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
191 | CSKY::AEK_HWDIV), |
192 | CSKYCPUTestParams("ck803r1" , "ck803" , |
193 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
194 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
195 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
196 | CSKYCPUTestParams("ck803r2" , "ck803" , |
197 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
198 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
199 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
200 | CSKYCPUTestParams("ck803r3" , "ck803" , |
201 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
202 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
203 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
204 | CSKYCPUTestParams("ck803hr1" , "ck803" , |
205 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
206 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
207 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
208 | CSKYCPUTestParams("ck803hr2" , "ck803" , |
209 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
210 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
211 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
212 | CSKYCPUTestParams("ck803hr3" , "ck803" , |
213 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
214 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
215 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
216 | CSKYCPUTestParams("ck803tr1" , "ck803" , |
217 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
218 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
219 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
220 | CSKYCPUTestParams("ck803tr2" , "ck803" , |
221 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
222 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
223 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
224 | CSKYCPUTestParams("ck803tr3" , "ck803" , |
225 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
226 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
227 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
228 | CSKYCPUTestParams("ck803htr1" , "ck803" , |
229 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
230 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
231 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
232 | CSKYCPUTestParams("ck803htr2" , "ck803" , |
233 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
234 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
235 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
236 | CSKYCPUTestParams("ck803htr3" , "ck803" , |
237 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
238 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
239 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
240 | CSKYCPUTestParams("ck803fr1" , "ck803" , |
241 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
242 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
243 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
244 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
245 | CSKY::AEK_HWDIV), |
246 | CSKYCPUTestParams("ck803fr2" , "ck803" , |
247 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
248 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
249 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
250 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
251 | CSKY::AEK_HWDIV), |
252 | CSKYCPUTestParams("ck803fr3" , "ck803" , |
253 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
254 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
255 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
256 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
257 | CSKY::AEK_HWDIV), |
258 | CSKYCPUTestParams("ck803fhr1" , "ck803" , |
259 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
260 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
261 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
262 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
263 | CSKY::AEK_HWDIV), |
264 | CSKYCPUTestParams("ck803fhr2" , "ck803" , |
265 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
266 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
267 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
268 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
269 | CSKY::AEK_HWDIV), |
270 | CSKYCPUTestParams("ck803fhr3" , "ck803" , |
271 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
272 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
273 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
274 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
275 | CSKY::AEK_HWDIV), |
276 | CSKYCPUTestParams("ck803er1" , "ck803" , |
277 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
278 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
279 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
280 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
281 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
282 | CSKYCPUTestParams("ck803er2" , "ck803" , |
283 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
284 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
285 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
286 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
287 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
288 | CSKYCPUTestParams("ck803er3" , "ck803" , |
289 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
290 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
291 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
292 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
293 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
294 | CSKYCPUTestParams("ck803ehr1" , "ck803" , |
295 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
296 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
297 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
298 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
299 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
300 | CSKYCPUTestParams("ck803ehr2" , "ck803" , |
301 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
302 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
303 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
304 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
305 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
306 | CSKYCPUTestParams("ck803ehr3" , "ck803" , |
307 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
308 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
309 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
310 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
311 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
312 | CSKYCPUTestParams("ck803etr1" , "ck803" , |
313 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
314 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
315 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
316 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
317 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
318 | CSKYCPUTestParams("ck803etr2" , "ck803" , |
319 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
320 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
321 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
322 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
323 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
324 | CSKYCPUTestParams("ck803etr3" , "ck803" , |
325 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
326 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
327 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
328 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
329 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
330 | CSKYCPUTestParams("ck803ehtr1" , "ck803" , |
331 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
332 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
333 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
334 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
335 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
336 | CSKYCPUTestParams("ck803ehtr2" , "ck803" , |
337 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
338 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
339 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
340 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
341 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
342 | CSKYCPUTestParams("ck803ehtr3" , "ck803" , |
343 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
344 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
345 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
346 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
347 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
348 | CSKYCPUTestParams("ck803efr1" , "ck803" , |
349 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
350 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
351 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
352 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
353 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
354 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
355 | CSKY::AEK_HWDIV), |
356 | CSKYCPUTestParams("ck803efr2" , "ck803" , |
357 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
358 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
359 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
360 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
361 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
362 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
363 | CSKY::AEK_HWDIV), |
364 | CSKYCPUTestParams("ck803efr3" , "ck803" , |
365 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
366 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
367 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
368 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
369 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
370 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
371 | CSKY::AEK_HWDIV), |
372 | CSKYCPUTestParams("ck803efhr1" , "ck803" , |
373 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
374 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
375 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
376 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
377 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
378 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
379 | CSKY::AEK_HWDIV), |
380 | CSKYCPUTestParams("ck803efhr2" , "ck803" , |
381 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
382 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
383 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
384 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
385 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
386 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
387 | CSKY::AEK_HWDIV), |
388 | CSKYCPUTestParams("ck803efhr3" , "ck803" , |
389 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
390 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
391 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
392 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
393 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
394 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
395 | CSKY::AEK_HWDIV), |
396 | CSKYCPUTestParams("ck803ftr1" , "ck803" , |
397 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
398 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
399 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
400 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
401 | CSKY::AEK_HWDIV), |
402 | CSKYCPUTestParams("ck803ftr2" , "ck803" , |
403 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
404 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
405 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
406 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
407 | CSKY::AEK_HWDIV), |
408 | CSKYCPUTestParams("ck803ftr3" , "ck803" , |
409 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
410 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
411 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
412 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
413 | CSKY::AEK_HWDIV), |
414 | CSKYCPUTestParams("ck803eftr1" , "ck803" , |
415 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
416 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
417 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
418 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
419 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
420 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
421 | CSKY::AEK_HWDIV), |
422 | CSKYCPUTestParams("ck803eftr2" , "ck803" , |
423 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
424 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
425 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
426 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
427 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
428 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
429 | CSKY::AEK_HWDIV), |
430 | CSKYCPUTestParams("ck803eftr3" , "ck803" , |
431 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
432 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
433 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
434 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
435 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
436 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
437 | CSKY::AEK_HWDIV), |
438 | CSKYCPUTestParams("ck803efhtr1" , "ck803" , |
439 | CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
440 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
441 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
442 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
443 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
444 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
445 | CSKY::AEK_HWDIV), |
446 | CSKYCPUTestParams("ck803efhtr2" , "ck803" , |
447 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
448 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
449 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
450 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
451 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
452 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
453 | CSKY::AEK_HWDIV), |
454 | CSKYCPUTestParams("ck803efhtr3" , "ck803" , |
455 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | |
456 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
457 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | |
458 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
459 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
460 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
461 | CSKY::AEK_HWDIV), |
462 | CSKYCPUTestParams("s803" , "ck803" , |
463 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::MAEK_2E3 | |
464 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
465 | CSKY::AEK_HWDIV), |
466 | CSKYCPUTestParams("s803t" , "ck803" , |
467 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::MAEK_2E3 | |
468 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
469 | CSKY::AEK_HWDIV), |
470 | CSKYCPUTestParams("e803" , "ck803" , |
471 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::MAEK_2E3 | |
472 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
473 | CSKY::AEK_HWDIV), |
474 | CSKYCPUTestParams("e803t" , "ck803" , |
475 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::MAEK_2E3 | |
476 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
477 | CSKY::AEK_HWDIV), |
478 | |
479 | CSKYCPUTestParams("ck803s" , "ck803s" , |
480 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
481 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
482 | CSKY::AEK_HWDIV), |
483 | CSKYCPUTestParams("ck803st" , "ck803s" , |
484 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
485 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
486 | CSKY::AEK_HWDIV), |
487 | CSKYCPUTestParams("ck803se" , "ck803s" , |
488 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
489 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
490 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV), |
491 | CSKYCPUTestParams("ck803sf" , "ck803s" , |
492 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
493 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
494 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
495 | CSKY::AEK_HWDIV), |
496 | CSKYCPUTestParams("ck803sef" , "ck803s" , |
497 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
498 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
499 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
500 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
501 | CSKY::AEK_HWDIV), |
502 | CSKYCPUTestParams("ck803seft" , "ck803s" , |
503 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
504 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
505 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
506 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
507 | CSKY::AEK_HWDIV), |
508 | |
509 | CSKYCPUTestParams("ck804" , "ck804" , |
510 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
511 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
512 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
513 | CSKY::AEK_3E3R3), |
514 | CSKYCPUTestParams("ck804h" , "ck804" , |
515 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
516 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
517 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
518 | CSKY::AEK_3E3R3), |
519 | CSKYCPUTestParams("ck804t" , "ck804" , |
520 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
521 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
522 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
523 | CSKY::AEK_3E3R3), |
524 | CSKYCPUTestParams("ck804ht" , "ck804" , |
525 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
526 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
527 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
528 | CSKY::AEK_3E3R3), |
529 | CSKYCPUTestParams("ck804f" , "ck804" , |
530 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
531 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
532 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
533 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
534 | CSKY::AEK_3E3R3), |
535 | CSKYCPUTestParams("ck804fh" , "ck804" , |
536 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
537 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
538 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
539 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
540 | CSKY::AEK_3E3R3), |
541 | CSKYCPUTestParams("ck804e" , "ck804" , |
542 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
543 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
544 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
545 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
546 | CSKY::AEK_3E3R3), |
547 | CSKYCPUTestParams("ck804eh" , "ck804" , |
548 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
549 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
550 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
551 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
552 | CSKY::AEK_3E3R3), |
553 | CSKYCPUTestParams("ck804et" , "ck804" , |
554 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
555 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
556 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
557 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
558 | CSKY::AEK_3E3R3), |
559 | CSKYCPUTestParams("ck804eht" , "ck804" , |
560 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
561 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
562 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
563 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
564 | CSKY::AEK_3E3R3), |
565 | CSKYCPUTestParams("ck804ef" , "ck804" , |
566 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
567 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
568 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG | |
569 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
570 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV | |
571 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3), |
572 | CSKYCPUTestParams("ck804efh" , "ck804" , |
573 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
574 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
575 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG | |
576 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
577 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV | |
578 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3), |
579 | CSKYCPUTestParams("ck804ft" , "ck804" , |
580 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
581 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
582 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
583 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
584 | CSKY::AEK_3E3R3), |
585 | CSKYCPUTestParams("ck804eft" , "ck804" , |
586 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
587 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
588 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG | |
589 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
590 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV | |
591 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3), |
592 | CSKYCPUTestParams("ck804efht" , "ck804" , |
593 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
594 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
595 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG | |
596 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
597 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV | |
598 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3), |
599 | CSKYCPUTestParams("e804d" , "ck804" , |
600 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
601 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
602 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
603 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
604 | CSKY::AEK_3E3R3), |
605 | CSKYCPUTestParams("e804dt" , "ck804" , |
606 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
607 | CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 | |
608 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
609 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
610 | CSKY::AEK_3E3R3), |
611 | CSKYCPUTestParams("e804f" , "ck804" , |
612 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
613 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
614 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
615 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
616 | CSKY::AEK_3E3R3), |
617 | CSKYCPUTestParams("e804ft" , "ck804" , |
618 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
619 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
620 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
621 | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | |
622 | CSKY::AEK_3E3R3), |
623 | CSKYCPUTestParams("e804df" , "ck804" , |
624 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
625 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
626 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG | |
627 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
628 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV | |
629 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3), |
630 | CSKYCPUTestParams("e804dft" , "ck804" , |
631 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
632 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
633 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG | |
634 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
635 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV | |
636 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3), |
637 | |
638 | CSKYCPUTestParams("ck805" , "ck805" , |
639 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
640 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
641 | CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG | |
642 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | |
643 | CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3), |
644 | CSKYCPUTestParams("ck805e" , "ck805" , |
645 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
646 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
647 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV | |
648 | CSKY::AEK_HIGHREG | CSKY::MAEK_3E3R2 | |
649 | CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 | |
650 | CSKY::AEK_VDSP2E3), |
651 | CSKYCPUTestParams("ck805f" , "ck805" , |
652 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
653 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
654 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
655 | CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG | |
656 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | |
657 | CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3), |
658 | CSKYCPUTestParams("ck805t" , "ck805" , |
659 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
660 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
661 | CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG | |
662 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | |
663 | CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3), |
664 | CSKYCPUTestParams("ck805ef" , "ck805" , |
665 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
666 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
667 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
668 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
669 | CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG | |
670 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | |
671 | CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3), |
672 | CSKYCPUTestParams("ck805et" , "ck805" , |
673 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
674 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
675 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV | |
676 | CSKY::AEK_HIGHREG | CSKY::MAEK_3E3R2 | |
677 | CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 | |
678 | CSKY::AEK_VDSP2E3), |
679 | CSKYCPUTestParams("ck805ft" , "ck805" , |
680 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
681 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
682 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
683 | CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG | |
684 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | |
685 | CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3), |
686 | CSKYCPUTestParams("ck805eft" , "ck805" , |
687 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
688 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_DSPV2 | |
689 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | |
690 | CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | |
691 | CSKY::AEK_NVIC | CSKY::AEK_HWDIV | |
692 | CSKY::AEK_HIGHREG | CSKY::MAEK_3E3R2 | |
693 | CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 | |
694 | CSKY::AEK_VDSP2E3), |
695 | CSKYCPUTestParams("i805" , "ck805" , |
696 | CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP | |
697 | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
698 | CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG | |
699 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | |
700 | CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3), |
701 | CSKYCPUTestParams("i805f" , "ck805" , |
702 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | |
703 | CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 | |
704 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | |
705 | CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG | |
706 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | |
707 | CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3), |
708 | |
709 | CSKYCPUTestParams("ck807" , "ck807" , |
710 | CSKY::AEK_NONE | CSKY::MAEK_3E7 | CSKY::MAEK_MP | |
711 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
712 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
713 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
714 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
715 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
716 | CSKYCPUTestParams("ck807e" , "ck807" , |
717 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
718 | CSKY::MAEK_3E7 | CSKY::MAEK_MP | |
719 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
720 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
721 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
722 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
723 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
724 | CSKYCPUTestParams( |
725 | "ck807f" , "ck807" , |
726 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
727 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 | |
728 | CSKY::AEK_FLOAT3E4 | CSKY::MAEK_3E7 | CSKY::MAEK_MP | |
729 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV | |
730 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
731 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | |
732 | CSKY::AEK_CACHE), |
733 | CSKYCPUTestParams( |
734 | "ck807ef" , "ck807" , |
735 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
736 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
737 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 | |
738 | CSKY::AEK_FLOAT3E4 | CSKY::MAEK_3E7 | CSKY::MAEK_MP | |
739 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV | |
740 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
741 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | |
742 | CSKY::AEK_CACHE), |
743 | CSKYCPUTestParams("c807" , "ck807" , |
744 | CSKY::AEK_NONE | CSKY::MAEK_3E7 | CSKY::MAEK_MP | |
745 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
746 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
747 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
748 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
749 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
750 | CSKYCPUTestParams( |
751 | "c807f" , "ck807" , |
752 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
753 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 | |
754 | CSKY::AEK_FLOAT3E4 | CSKY::MAEK_3E7 | CSKY::MAEK_MP | |
755 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV | |
756 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
757 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | |
758 | CSKY::AEK_CACHE), |
759 | |
760 | CSKYCPUTestParams("r807" , "ck807" , |
761 | CSKY::AEK_NONE | CSKY::MAEK_3E7 | CSKY::MAEK_MP | |
762 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
763 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
764 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
765 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
766 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
767 | CSKYCPUTestParams( |
768 | "r807f" , "ck807" , |
769 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
770 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 | |
771 | CSKY::AEK_FLOAT3E4 | CSKY::MAEK_3E7 | CSKY::MAEK_MP | |
772 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV | |
773 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
774 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | |
775 | CSKY::AEK_CACHE), |
776 | |
777 | CSKYCPUTestParams("ck810e" , "ck810" , |
778 | CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP | |
779 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
780 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
781 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
782 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
783 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
784 | |
785 | CSKYCPUTestParams("ck810et" , "ck810" , |
786 | CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP | |
787 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
788 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
789 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
790 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
791 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
792 | CSKYCPUTestParams( |
793 | "ck810ef" , "ck810" , |
794 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
795 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
796 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
797 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
798 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
799 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
800 | CSKYCPUTestParams( |
801 | "ck810eft" , "ck810" , |
802 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
803 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
804 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
805 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
806 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
807 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
808 | CSKYCPUTestParams("ck810" , "ck810" , |
809 | CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP | |
810 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
811 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
812 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
813 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
814 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
815 | CSKYCPUTestParams( |
816 | "ck810f" , "ck810" , |
817 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
818 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
819 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
820 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
821 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
822 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
823 | CSKYCPUTestParams("ck810t" , "ck810" , |
824 | CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP | |
825 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
826 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
827 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
828 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
829 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
830 | CSKYCPUTestParams( |
831 | "ck810ft" , "ck810" , |
832 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
833 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
834 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
835 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
836 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
837 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
838 | CSKYCPUTestParams( |
839 | "c810" , "ck810" , |
840 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
841 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
842 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
843 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
844 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
845 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
846 | CSKYCPUTestParams( |
847 | "c810t" , "ck810" , |
848 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
849 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
850 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
851 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
852 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
853 | CSKY::AEK_NVIC | CSKY::AEK_CACHE), |
854 | |
855 | CSKYCPUTestParams("ck810v" , "ck810v" , |
856 | CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP | |
857 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
858 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
859 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
860 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
861 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | |
862 | CSKY::AEK_VDSPV1), |
863 | |
864 | CSKYCPUTestParams("ck810ev" , "ck810v" , |
865 | CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP | |
866 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
867 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
868 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
869 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
870 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | |
871 | CSKY::AEK_VDSPV1), |
872 | |
873 | CSKYCPUTestParams("ck810tv" , "ck810v" , |
874 | CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP | |
875 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
876 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
877 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
878 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
879 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | |
880 | CSKY::AEK_VDSPV1), |
881 | |
882 | CSKYCPUTestParams("ck810etv" , "ck810v" , |
883 | CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP | |
884 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
885 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | |
886 | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | |
887 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
888 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | |
889 | CSKY::AEK_VDSPV1), |
890 | |
891 | CSKYCPUTestParams( |
892 | "c810v" , "ck810v" , |
893 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
894 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
895 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
896 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
897 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
898 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1), |
899 | |
900 | CSKYCPUTestParams( |
901 | "ck810fv" , "ck810v" , |
902 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
903 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
904 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
905 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
906 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
907 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1), |
908 | |
909 | CSKYCPUTestParams( |
910 | "ck810efv" , "ck810v" , |
911 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
912 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
913 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
914 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
915 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
916 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1), |
917 | |
918 | CSKYCPUTestParams( |
919 | "ck810ftv" , "ck810v" , |
920 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
921 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
922 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
923 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
924 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
925 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1), |
926 | |
927 | CSKYCPUTestParams( |
928 | "c810tv" , "ck810v" , |
929 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
930 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
931 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
932 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
933 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
934 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1), |
935 | |
936 | CSKYCPUTestParams( |
937 | "c810eftv" , "ck810v" , |
938 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | |
939 | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 | |
940 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
941 | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | |
942 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
943 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1), |
944 | |
945 | CSKYCPUTestParams("ck860" , "ck860" , |
946 | CSKY::AEK_NONE | CSKY::MAEK_10E60 | CSKY::MAEK_MP | |
947 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
948 | CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | |
949 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
950 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | |
951 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3), |
952 | |
953 | CSKYCPUTestParams( |
954 | "ck860f" , "ck860" , |
955 | CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF | |
956 | CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60 | CSKY::MAEK_10E60 | |
957 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
958 | CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
959 | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE | |
960 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3), |
961 | |
962 | CSKYCPUTestParams( |
963 | "c860" , "ck860" , |
964 | CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF | |
965 | CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60 | CSKY::MAEK_10E60 | |
966 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
967 | CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
968 | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE | |
969 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3), |
970 | |
971 | CSKYCPUTestParams("ck860v" , "ck860v" , |
972 | CSKY::AEK_NONE | CSKY::MAEK_10E60 | CSKY::MAEK_MP | |
973 | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
974 | CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | |
975 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | |
976 | CSKY::AEK_NVIC | CSKY::AEK_CACHE | |
977 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | |
978 | CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E60F), |
979 | |
980 | CSKYCPUTestParams( |
981 | "ck860fv" , "ck860v" , |
982 | CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF | |
983 | CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60 | CSKY::MAEK_10E60 | |
984 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
985 | CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
986 | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE | |
987 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 | |
988 | CSKY::AEK_VDSP2E60F), |
989 | |
990 | CSKYCPUTestParams( |
991 | "c860v" , "ck860v" , |
992 | CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF | |
993 | CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60 | CSKY::MAEK_10E60 | |
994 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | |
995 | CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | |
996 | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE | |
997 | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 | |
998 | CSKY::AEK_VDSP2E60F))); |
999 | |
1000 | static constexpr unsigned NumCSKYCPUArchs = 145; |
1001 | |
1002 | TEST(TargetParserTest, testCSKYCPUArchList) { |
1003 | SmallVector<StringRef, NumCSKYCPUArchs> List; |
1004 | CSKY::fillValidCPUArchList(Values&: List); |
1005 | |
1006 | // No list exists for these in this test suite, so ensure all are |
1007 | // valid, and match the expected 'magic' count. |
1008 | EXPECT_EQ(List.size(), NumCSKYCPUArchs); |
1009 | for (StringRef CPU : List) { |
1010 | EXPECT_NE(CSKY::parseCPUArch(CPU), CSKY::ArchKind::INVALID); |
1011 | } |
1012 | } |
1013 | |
1014 | TEST(TargetParserTest, testInvalidCSKYArch) { |
1015 | auto InvalidArchStrings = {"ckv" , "ckv99" , "nock" }; |
1016 | for (const char *InvalidArch : InvalidArchStrings) |
1017 | EXPECT_EQ(CSKY::parseArch(InvalidArch), CSKY::ArchKind::INVALID); |
1018 | } |
1019 | |
1020 | bool testCSKYArch(StringRef Arch, StringRef DefaultCPU) { |
1021 | CSKY::ArchKind AK = CSKY::parseArch(Arch); |
1022 | bool Result = (AK != CSKY::ArchKind::INVALID); |
1023 | Result &= CSKY::getDefaultCPU(Arch).equals(RHS: DefaultCPU); |
1024 | return Result; |
1025 | } |
1026 | |
1027 | TEST(TargetParserTest, testCSKYArch) { |
1028 | EXPECT_TRUE(testCSKYArch("ck801" , "ck801" )); |
1029 | EXPECT_TRUE(testCSKYArch("ck802" , "ck802" )); |
1030 | EXPECT_TRUE(testCSKYArch("ck803" , "ck803" )); |
1031 | EXPECT_TRUE(testCSKYArch("ck803s" , "ck803s" )); |
1032 | EXPECT_TRUE(testCSKYArch("ck804" , "ck804" )); |
1033 | EXPECT_TRUE(testCSKYArch("ck805" , "ck805" )); |
1034 | EXPECT_TRUE(testCSKYArch("ck807" , "ck807" )); |
1035 | EXPECT_TRUE(testCSKYArch("ck810" , "ck810" )); |
1036 | EXPECT_TRUE(testCSKYArch("ck810v" , "ck810v" )); |
1037 | EXPECT_TRUE(testCSKYArch("ck860" , "ck860" )); |
1038 | EXPECT_TRUE(testCSKYArch("ck860v" , "ck860v" )); |
1039 | } |
1040 | |
1041 | TEST(TargetParserTest, CSKYFPUVersion) { |
1042 | for (CSKY::CSKYFPUKind FK = static_cast<CSKY::CSKYFPUKind>(0); |
1043 | FK <= CSKY::CSKYFPUKind::FK_LAST; |
1044 | FK = static_cast<CSKY::CSKYFPUKind>(static_cast<unsigned>(FK) + 1)) |
1045 | if (FK == CSKY::FK_LAST || CSKY::getFPUName(FPUKind: FK) == "invalid" ) |
1046 | EXPECT_EQ(CSKY::FPUVersion::NONE, CSKY::getFPUVersion(FK)); |
1047 | else |
1048 | EXPECT_NE(CSKY::FPUVersion::NONE, CSKY::getFPUVersion(FK)); |
1049 | } |
1050 | |
1051 | TEST(TargetParserTest, CSKYExtensionFeatures) { |
1052 | std::map<uint64_t, std::vector<StringRef>> Extensions; |
1053 | |
1054 | for (auto &Ext : CSKY::CSKYARCHExtNames) { |
1055 | if (Ext.Feature && Ext.NegFeature) |
1056 | Extensions[Ext.ID] = {StringRef(Ext.Feature), StringRef(Ext.NegFeature)}; |
1057 | } |
1058 | |
1059 | std::vector<StringRef> Features; |
1060 | |
1061 | EXPECT_FALSE(CSKY::getExtensionFeatures(CSKY::AEK_INVALID, Features)); |
1062 | |
1063 | for (auto &E : Extensions) { |
1064 | CSKY::getExtensionFeatures(Extensions: E.first, Features); |
1065 | EXPECT_TRUE(llvm::is_contained(Features, E.second.at(0))); |
1066 | } |
1067 | |
1068 | EXPECT_EQ(Extensions.size(), Features.size()); |
1069 | } |
1070 | |
1071 | TEST(TargetParserTest, CSKYFPUFeatures) { |
1072 | std::vector<StringRef> Features; |
1073 | for (CSKY::CSKYFPUKind FK = static_cast<CSKY::CSKYFPUKind>(0); |
1074 | FK <= CSKY::CSKYFPUKind::FK_LAST; |
1075 | FK = static_cast<CSKY::CSKYFPUKind>(static_cast<unsigned>(FK) + 1)) { |
1076 | if (FK == CSKY::FK_INVALID || FK >= CSKY::FK_LAST) |
1077 | EXPECT_FALSE(CSKY::getFPUFeatures(FK, Features)); |
1078 | else |
1079 | EXPECT_TRUE(CSKY::getFPUFeatures(FK, Features)); |
1080 | } |
1081 | } |
1082 | |
1083 | TEST(TargetParserTest, CSKYArchExtFeature) { |
1084 | const char *ArchExt[][4] = { |
1085 | {"fpuv2_sf" , "nofpuv2_sf" , "+fpuv2_sf" , "-fpuv2_sf" }, |
1086 | {"fpuv2_df" , "nofpuv2_df" , "+fpuv2_df" , "-fpuv2_df" }, |
1087 | {"fdivdu" , "nofdivdu" , "+fdivdu" , "-fdivdu" }, |
1088 | {"fpuv3_hi" , "nofpuv3_hi" , "+fpuv3_hi" , "-fpuv3_hi" }, |
1089 | {"fpuv3_hf" , "nofpuv3_hf" , "+fpuv3_hf" , "-fpuv3_hf" }, |
1090 | {"fpuv2_df" , "nofpuv2_df" , "+fpuv2_df" , "-fpuv2_df" }, |
1091 | {"fpuv3_sf" , "nofpuv3_sf" , "+fpuv3_sf" , "-fpuv3_sf" }, |
1092 | {"fpuv3_df" , "nofpuv3_df" , "+fpuv3_df" , "-fpuv3_df" }, |
1093 | {"floate1" , "nofloate1" , "+floate1" , "-floate1" }, |
1094 | {"float1e2" , "nofloat1e2" , "+float1e2" , "-float1e2" }, |
1095 | {"float1e3" , "nofloat1e3" , "+float1e3" , "-float1e3" }, |
1096 | {"float3e4" , "nofloat3e4" , "+float3e4" , "-float3e4" }, |
1097 | {"float7e60" , "nofloat7e60" , "+float7e60" , "-float7e60" }, |
1098 | {"hwdiv" , "nohwdiv" , "+hwdiv" , "-hwdiv" }, |
1099 | {"multiple_stld" , "nomultiple_stld" , "+multiple_stld" , "-multiple_stld" }, |
1100 | {"pushpop" , "nopushpop" , "+pushpop" , "-pushpop" }, |
1101 | {"edsp" , "noedsp" , "+edsp" , "-edsp" }, |
1102 | {"dsp1e2" , "nodsp1e2" , "+dsp1e2" , "-dsp1e2" }, |
1103 | {"dspe60" , "nodspe60" , "+dspe60" , "-dspe60" }, |
1104 | {"dspv2" , "nodspv2" , "+dspv2" , "-dspv2" }, |
1105 | {"dsp_silan" , "nodsp_silan" , "+dsp_silan" , "-dsp_silan" }, |
1106 | {"elrw" , "noelrw" , "+elrw" , "-elrw" }, |
1107 | {"trust" , "notrust" , "+trust" , "-trust" }, |
1108 | {"java" , "nojava" , "+java" , "-java" }, |
1109 | {"cache" , "nocache" , "+cache" , "-cache" }, |
1110 | {"nvic" , "nonvic" , "+nvic" , "-nvic" }, |
1111 | {"doloop" , "nodoloop" , "+doloop" , "-doloop" }, |
1112 | {"high-registers" , "nohigh-registers" , "+high-registers" , |
1113 | "-high-registers" }, |
1114 | {"smart" , "nosmart" , "+smart" , "-smart" }, |
1115 | {"vdsp2e3" , "novdsp2e3" , "+vdsp2e3" , "-vdsp2e3" }, |
1116 | {"vdsp2e60f" , "novdsp2e60f" , "+vdsp2e60f" , "-vdsp2e60f" }, |
1117 | {"vdspv2" , "novdspv2" , "+vdspv2" , "-vdspv2" }, |
1118 | {"hard-tp" , "nohard-tp" , "+hard-tp" , "-hard-tp" }, |
1119 | {"soft-tp" , "nosoft-tp" , "+soft-tp" , "-soft-tp" }, |
1120 | {"istack" , "noistack" , "+istack" , "-istack" }, |
1121 | {"constpool" , "noconstpool" , "+constpool" , "-constpool" }, |
1122 | {"stack-size" , "nostack-size" , "+stack-size" , "-stack-size" }, |
1123 | {"ccrt" , "noccrt" , "+ccrt" , "-ccrt" }, |
1124 | {"vdspv1" , "novdspv1" , "+vdspv1" , "-vdspv1" }, |
1125 | {"e1" , "noe1" , "+e1" , "-e1" }, |
1126 | {"e2" , "noe2" , "+e2" , "-e2" }, |
1127 | {"2e3" , "no2e3" , "+2e3" , "-2e3" }, |
1128 | {"mp" , "nomp" , "+mp" , "-mp" }, |
1129 | {"3e3r1" , "no3e3r1" , "+3e3r1" , "-3e3r1" }, |
1130 | {"3e3r2" , "no3e3r2" , "+3e3r2" , "-3e3r2" }, |
1131 | {"3e3r3" , "no3e3r3" , "+3e3r3" , "-3e3r3" }, |
1132 | {"3e7" , "no3e7" , "+3e7" , "-3e7" }, |
1133 | {"mp1e2" , "nomp1e2" , "+mp1e2" , "-mp1e2" }, |
1134 | {"7e10" , "no7e10" , "+7e10" , "-7e10" }, |
1135 | {"10e60" , "no10e60" , "+10e60" , "-10e60" }, |
1136 | }; |
1137 | |
1138 | for (unsigned i = 0; i < std::size(ArchExt); i++) { |
1139 | EXPECT_EQ(StringRef(ArchExt[i][2]), CSKY::getArchExtFeature(ArchExt[i][0])); |
1140 | EXPECT_EQ(StringRef(ArchExt[i][3]), CSKY::getArchExtFeature(ArchExt[i][1])); |
1141 | } |
1142 | } |
1143 | |
1144 | } // namespace |
1145 | |