121bce900SZi Xuan Wu //===-------- CSKYTargetParser.cpp - CSKY Target Parser -------------------===//
221bce900SZi Xuan Wu //
321bce900SZi Xuan Wu // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
421bce900SZi Xuan Wu // See https://llvm.org/LICENSE.txt for license information.
521bce900SZi Xuan Wu // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
621bce900SZi Xuan Wu //
721bce900SZi Xuan Wu //===----------------------------------------------------------------------===//
821bce900SZi Xuan Wu 
921bce900SZi Xuan Wu #include "llvm/Support/CSKYTargetParser.h"
1021bce900SZi Xuan Wu #include "llvm/ADT/STLExtras.h"
1121bce900SZi Xuan Wu #include "llvm/ADT/StringExtras.h"
1221bce900SZi Xuan Wu #include "llvm/Support/CSKYAttributes.h"
1321bce900SZi Xuan Wu #include "llvm/Support/FormatVariadic.h"
1421bce900SZi Xuan Wu #include "llvm/Support/TargetParser.h"
1521bce900SZi Xuan Wu #include "gtest/gtest.h"
1621bce900SZi Xuan Wu #include <string>
1721bce900SZi Xuan Wu 
1821bce900SZi Xuan Wu using namespace llvm;
1921bce900SZi Xuan Wu 
2021bce900SZi Xuan Wu namespace {
2121bce900SZi Xuan Wu 
FormatExtensionFlags(uint64_t Flags)2221bce900SZi Xuan Wu std::string FormatExtensionFlags(uint64_t Flags) {
2321bce900SZi Xuan Wu   std::vector<StringRef> Features;
2421bce900SZi Xuan Wu 
2521bce900SZi Xuan Wu   if (Flags & CSKY::AEK_NONE)
2621bce900SZi Xuan Wu     Features.push_back("none");
2721bce900SZi Xuan Wu   CSKY::getExtensionFeatures(Flags, Features);
2821bce900SZi Xuan Wu 
2921bce900SZi Xuan Wu   Features.erase(std::remove_if(Features.begin(), Features.end(),
3021bce900SZi Xuan Wu                                 [](StringRef extension) {
3121bce900SZi Xuan Wu                                   return extension.startswith("-");
3221bce900SZi Xuan Wu                                 }),
3321bce900SZi Xuan Wu                  Features.end());
3421bce900SZi Xuan Wu 
3521bce900SZi Xuan Wu   return llvm::join(Features, ", ");
3621bce900SZi Xuan Wu }
3721bce900SZi Xuan Wu 
AssertSameExtensionFlags(const char * m_expr,const char * n_expr,uint64_t ExpectedFlags,uint64_t GotFlags)3821bce900SZi Xuan Wu testing::AssertionResult AssertSameExtensionFlags(const char *m_expr,
3921bce900SZi Xuan Wu                                                   const char *n_expr,
4021bce900SZi Xuan Wu                                                   uint64_t ExpectedFlags,
4121bce900SZi Xuan Wu                                                   uint64_t GotFlags) {
4221bce900SZi Xuan Wu   if (ExpectedFlags == GotFlags)
4321bce900SZi Xuan Wu     return testing::AssertionSuccess();
4421bce900SZi Xuan Wu 
4521bce900SZi Xuan Wu   return testing::AssertionFailure()
4621bce900SZi Xuan Wu          << llvm::formatv("Expected extension flags: {0} ({1:x})\n"
4721bce900SZi Xuan Wu                           "     Got extension flags: {2} ({3:x})\n",
4821bce900SZi Xuan Wu                           FormatExtensionFlags(ExpectedFlags), ExpectedFlags,
4921bce900SZi Xuan Wu                           FormatExtensionFlags(GotFlags), GotFlags);
5021bce900SZi Xuan Wu }
5121bce900SZi Xuan Wu 
5221bce900SZi Xuan Wu struct CSKYCPUTestParams {
CSKYCPUTestParams__anonf2b2d3560111::CSKYCPUTestParams5321bce900SZi Xuan Wu   CSKYCPUTestParams(StringRef CPUName, StringRef ExpectedArch,
5421bce900SZi Xuan Wu                     uint64_t ExpectedFlags)
5521bce900SZi Xuan Wu       : CPUName(CPUName), ExpectedArch(ExpectedArch),
5621bce900SZi Xuan Wu         ExpectedFlags(ExpectedFlags) {}
5721bce900SZi Xuan Wu 
operator <<(std::ostream & os,const CSKYCPUTestParams & params)5821bce900SZi Xuan Wu   friend std::ostream &operator<<(std::ostream &os,
5921bce900SZi Xuan Wu                                   const CSKYCPUTestParams &params) {
6021bce900SZi Xuan Wu     return os << "\"" << params.CPUName.str() << "\", \""
6121bce900SZi Xuan Wu               << params.ExpectedArch.str() << "\", \"" << params.ExpectedFlags
6221bce900SZi Xuan Wu               << "\"";
6321bce900SZi Xuan Wu   }
6421bce900SZi Xuan Wu 
6521bce900SZi Xuan Wu   StringRef CPUName;
6621bce900SZi Xuan Wu   StringRef ExpectedArch;
6721bce900SZi Xuan Wu   uint64_t ExpectedFlags;
6821bce900SZi Xuan Wu };
6921bce900SZi Xuan Wu 
7021bce900SZi Xuan Wu class CSKYCPUTestFixture : public ::testing::TestWithParam<CSKYCPUTestParams> {
7121bce900SZi Xuan Wu };
7221bce900SZi Xuan Wu 
TEST_P(CSKYCPUTestFixture,CSKYCPUTests)7321bce900SZi Xuan Wu TEST_P(CSKYCPUTestFixture, CSKYCPUTests) {
7421bce900SZi Xuan Wu   auto params = GetParam();
7521bce900SZi Xuan Wu 
7621bce900SZi Xuan Wu   CSKY::ArchKind AK = CSKY::parseCPUArch(params.CPUName);
7721bce900SZi Xuan Wu   EXPECT_EQ(params.ExpectedArch, CSKY::getArchName(AK));
7821bce900SZi Xuan Wu 
7921bce900SZi Xuan Wu   uint64_t default_extensions = CSKY::getDefaultExtensions(params.CPUName);
8021bce900SZi Xuan Wu   EXPECT_PRED_FORMAT2(AssertSameExtensionFlags, params.ExpectedFlags,
8121bce900SZi Xuan Wu                       default_extensions);
8221bce900SZi Xuan Wu }
8321bce900SZi Xuan Wu 
8421bce900SZi Xuan Wu // Note that we include CSKY::AEK_NONE even when there are other extensions
8521bce900SZi Xuan Wu // we expect. This is because the default extensions for a CPU are the sum
8621bce900SZi Xuan Wu // of the default extensions for its architecture and for the CPU.
8721bce900SZi Xuan Wu // So if a CPU has no extra extensions, it adds AEK_NONE.
8821bce900SZi Xuan Wu INSTANTIATE_TEST_SUITE_P(
8921bce900SZi Xuan Wu     CSKYCPUTests, CSKYCPUTestFixture,
9021bce900SZi Xuan Wu     ::testing::Values(
9121bce900SZi Xuan Wu 
9221bce900SZi Xuan Wu         CSKYCPUTestParams("ck801", "ck801",
9321bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_E1 | CSKY::AEK_TRUST),
9421bce900SZi Xuan Wu         CSKYCPUTestParams("ck801t", "ck801",
9521bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_E1 | CSKY::AEK_TRUST),
9621bce900SZi Xuan Wu         CSKYCPUTestParams("e801", "ck801",
9721bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_E1 | CSKY::AEK_TRUST),
9821bce900SZi Xuan Wu 
9921bce900SZi Xuan Wu         CSKYCPUTestParams("ck802", "ck802",
10021bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST |
10121bce900SZi Xuan Wu                               CSKY::AEK_NVIC),
10221bce900SZi Xuan Wu         CSKYCPUTestParams("ck802t", "ck802",
10321bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST |
10421bce900SZi Xuan Wu                               CSKY::AEK_NVIC),
10521bce900SZi Xuan Wu         CSKYCPUTestParams("ck802j", "ck802",
10621bce900SZi Xuan Wu                           CSKY::AEK_JAVA | CSKY::MAEK_E2 | CSKY::AEK_TRUST |
10721bce900SZi Xuan Wu                               CSKY::AEK_NVIC),
10821bce900SZi Xuan Wu         CSKYCPUTestParams("e802", "ck802",
10921bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST |
11021bce900SZi Xuan Wu                               CSKY::AEK_NVIC),
11121bce900SZi Xuan Wu         CSKYCPUTestParams("e802t", "ck802",
11221bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST |
11321bce900SZi Xuan Wu                               CSKY::AEK_NVIC),
11421bce900SZi Xuan Wu         CSKYCPUTestParams("s802", "ck802",
11521bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST |
11621bce900SZi Xuan Wu                               CSKY::AEK_NVIC),
11721bce900SZi Xuan Wu         CSKYCPUTestParams("s802t", "ck802",
11821bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_E2 | CSKY::AEK_TRUST |
11921bce900SZi Xuan Wu                               CSKY::AEK_NVIC),
12021bce900SZi Xuan Wu 
12121bce900SZi Xuan Wu         CSKYCPUTestParams("ck803", "ck803",
12221bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
12321bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
12421bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
12521bce900SZi Xuan Wu         CSKYCPUTestParams("ck803h", "ck803",
12621bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
12721bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
12821bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
12921bce900SZi Xuan Wu         CSKYCPUTestParams("ck803t", "ck803",
13021bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
13121bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
13221bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
13321bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ht", "ck803",
13421bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
13521bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
13621bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
13721bce900SZi Xuan Wu         CSKYCPUTestParams("ck803f", "ck803",
13821bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
13921bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
14021bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
14121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
14221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803fh", "ck803",
14321bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
14421bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
14521bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
14621bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
14721bce900SZi Xuan Wu         CSKYCPUTestParams("ck803e", "ck803",
14821bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
14921bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
15021bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
15121bce900SZi Xuan Wu         CSKYCPUTestParams("ck803eh", "ck803",
15221bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
15321bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
15421bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
15521bce900SZi Xuan Wu         CSKYCPUTestParams("ck803et", "ck803",
15621bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
15721bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
15821bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
15921bce900SZi Xuan Wu         CSKYCPUTestParams("ck803eht", "ck803",
16021bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
16121bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
16221bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
16321bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ef", "ck803",
16421bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
16521bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
16621bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
16721bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
16821bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
16921bce900SZi Xuan Wu         CSKYCPUTestParams("ck803efh", "ck803",
17021bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
17121bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
17221bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
17321bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
17421bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
17521bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ft", "ck803",
17621bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
17721bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
17821bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
17921bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
18021bce900SZi Xuan Wu         CSKYCPUTestParams("ck803eft", "ck803",
18121bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
18221bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
18321bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
18421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
18521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
18621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803efht", "ck803",
18721bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
18821bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
18921bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
19021bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
19121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
19221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803r1", "ck803",
19321bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
19421bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
19521bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
19621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803r2", "ck803",
19721bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
19821bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
19921bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
20021bce900SZi Xuan Wu         CSKYCPUTestParams("ck803r3", "ck803",
20121bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
20221bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
20321bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
20421bce900SZi Xuan Wu         CSKYCPUTestParams("ck803hr1", "ck803",
20521bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
20621bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
20721bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
20821bce900SZi Xuan Wu         CSKYCPUTestParams("ck803hr2", "ck803",
20921bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
21021bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
21121bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
21221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803hr3", "ck803",
21321bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
21421bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
21521bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
21621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803tr1", "ck803",
21721bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
21821bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
21921bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
22021bce900SZi Xuan Wu         CSKYCPUTestParams("ck803tr2", "ck803",
22121bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
22221bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
22321bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
22421bce900SZi Xuan Wu         CSKYCPUTestParams("ck803tr3", "ck803",
22521bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
22621bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
22721bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
22821bce900SZi Xuan Wu         CSKYCPUTestParams("ck803htr1", "ck803",
22921bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
23021bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
23121bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
23221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803htr2", "ck803",
23321bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
23421bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
23521bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
23621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803htr3", "ck803",
23721bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
23821bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
23921bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
24021bce900SZi Xuan Wu         CSKYCPUTestParams("ck803fr1", "ck803",
24121bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
24221bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
24321bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
24421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
24521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
24621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803fr2", "ck803",
24721bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
24821bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
24921bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
25021bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
25121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
25221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803fr3", "ck803",
25321bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
25421bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
25521bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
25621bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
25721bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
25821bce900SZi Xuan Wu         CSKYCPUTestParams("ck803fhr1", "ck803",
25921bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
26021bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
26121bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
26221bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
26321bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
26421bce900SZi Xuan Wu         CSKYCPUTestParams("ck803fhr2", "ck803",
26521bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
26621bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
26721bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
26821bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
26921bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
27021bce900SZi Xuan Wu         CSKYCPUTestParams("ck803fhr3", "ck803",
27121bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
27221bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
27321bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
27421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
27521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
27621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803er1", "ck803",
27721bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
27821bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
27921bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
28021bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
28121bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
28221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803er2", "ck803",
28321bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
28421bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
28521bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
28621bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
28721bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
28821bce900SZi Xuan Wu         CSKYCPUTestParams("ck803er3", "ck803",
28921bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
29021bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
29121bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
29221bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
29321bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
29421bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ehr1", "ck803",
29521bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
29621bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
29721bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
29821bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
29921bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
30021bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ehr2", "ck803",
30121bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
30221bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
30321bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
30421bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
30521bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
30621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ehr3", "ck803",
30721bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
30821bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
30921bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
31021bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
31121bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
31221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803etr1", "ck803",
31321bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
31421bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
31521bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
31621bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
31721bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
31821bce900SZi Xuan Wu         CSKYCPUTestParams("ck803etr2", "ck803",
31921bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
32021bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
32121bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
32221bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
32321bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
32421bce900SZi Xuan Wu         CSKYCPUTestParams("ck803etr3", "ck803",
32521bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
32621bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
32721bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
32821bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
32921bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
33021bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ehtr1", "ck803",
33121bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
33221bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
33321bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
33421bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
33521bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
33621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ehtr2", "ck803",
33721bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
33821bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
33921bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
34021bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
34121bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
34221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ehtr3", "ck803",
34321bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
34421bce900SZi Xuan Wu                               CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
34521bce900SZi Xuan Wu                               CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
34621bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
34721bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
34821bce900SZi Xuan Wu         CSKYCPUTestParams("ck803efr1", "ck803",
34921bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
35021bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
35121bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
35221bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
35321bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
35421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
35521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
35621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803efr2", "ck803",
35721bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
35821bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
35921bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
36021bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
36121bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
36221bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
36321bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
36421bce900SZi Xuan Wu         CSKYCPUTestParams("ck803efr3", "ck803",
36521bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
36621bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
36721bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
36821bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
36921bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
37021bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
37121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
37221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803efhr1", "ck803",
37321bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
37421bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
37521bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
37621bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
37721bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
37821bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
37921bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
38021bce900SZi Xuan Wu         CSKYCPUTestParams("ck803efhr2", "ck803",
38121bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
38221bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
38321bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
38421bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
38521bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
38621bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
38721bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
38821bce900SZi Xuan Wu         CSKYCPUTestParams("ck803efhr3", "ck803",
38921bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
39021bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
39121bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
39221bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
39321bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
39421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
39521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
39621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ftr1", "ck803",
39721bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
39821bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
39921bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
40021bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
40121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
40221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ftr2", "ck803",
40321bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
40421bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
40521bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
40621bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
40721bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
40821bce900SZi Xuan Wu         CSKYCPUTestParams("ck803ftr3", "ck803",
40921bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
41021bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
41121bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
41221bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
41321bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
41421bce900SZi Xuan Wu         CSKYCPUTestParams("ck803eftr1", "ck803",
41521bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
41621bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
41721bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
41821bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
41921bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
42021bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
42121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
42221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803eftr2", "ck803",
42321bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
42421bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
42521bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
42621bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
42721bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
42821bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
42921bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
43021bce900SZi Xuan Wu         CSKYCPUTestParams("ck803eftr3", "ck803",
43121bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
43221bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
43321bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
43421bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
43521bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
43621bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
43721bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
43821bce900SZi Xuan Wu         CSKYCPUTestParams("ck803efhtr1", "ck803",
43921bce900SZi Xuan Wu                           CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
44021bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
44121bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
44221bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
44321bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
44421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
44521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
44621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803efhtr2", "ck803",
44721bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
44821bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
44921bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
45021bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
45121bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
45221bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
45321bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
45421bce900SZi Xuan Wu         CSKYCPUTestParams("ck803efhtr3", "ck803",
45521bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 |
45621bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
45721bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP |
45821bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
45921bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
46021bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
46121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
46221bce900SZi Xuan Wu         CSKYCPUTestParams("s803", "ck803",
46321bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::MAEK_2E3 |
46421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
46521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
46621bce900SZi Xuan Wu         CSKYCPUTestParams("s803t", "ck803",
46721bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::MAEK_2E3 |
46821bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
46921bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
47021bce900SZi Xuan Wu         CSKYCPUTestParams("e803", "ck803",
47121bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::MAEK_2E3 |
47221bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
47321bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
47421bce900SZi Xuan Wu         CSKYCPUTestParams("e803t", "ck803",
47521bce900SZi Xuan Wu                           CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::MAEK_2E3 |
47621bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
47721bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
47821bce900SZi Xuan Wu 
47921bce900SZi Xuan Wu         CSKYCPUTestParams("ck803s", "ck803s",
48021bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
48121bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
48221bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
48321bce900SZi Xuan Wu         CSKYCPUTestParams("ck803st", "ck803s",
48421bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
48521bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
48621bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
48721bce900SZi Xuan Wu         CSKYCPUTestParams("ck803se", "ck803s",
48821bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
48921bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
49021bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV),
49121bce900SZi Xuan Wu         CSKYCPUTestParams("ck803sf", "ck803s",
49221bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
49321bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
49421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
49521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
49621bce900SZi Xuan Wu         CSKYCPUTestParams("ck803sef", "ck803s",
49721bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
49821bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
49921bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
50021bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
50121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
50221bce900SZi Xuan Wu         CSKYCPUTestParams("ck803seft", "ck803s",
50321bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
50421bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
50521bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
50621bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
50721bce900SZi Xuan Wu                               CSKY::AEK_HWDIV),
50821bce900SZi Xuan Wu 
50921bce900SZi Xuan Wu         CSKYCPUTestParams("ck804", "ck804",
51021bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
51121bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
51221bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
51321bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
51421bce900SZi Xuan Wu         CSKYCPUTestParams("ck804h", "ck804",
51521bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
51621bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
51721bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
51821bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
51921bce900SZi Xuan Wu         CSKYCPUTestParams("ck804t", "ck804",
52021bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
52121bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
52221bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
52321bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
52421bce900SZi Xuan Wu         CSKYCPUTestParams("ck804ht", "ck804",
52521bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
52621bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
52721bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
52821bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
52921bce900SZi Xuan Wu         CSKYCPUTestParams("ck804f", "ck804",
53021bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
53121bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
53221bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
53321bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
53421bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
53521bce900SZi Xuan Wu         CSKYCPUTestParams("ck804fh", "ck804",
53621bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
53721bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
53821bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
53921bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
54021bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
54121bce900SZi Xuan Wu         CSKYCPUTestParams("ck804e", "ck804",
54221bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
54321bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
54421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
54521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
54621bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
54721bce900SZi Xuan Wu         CSKYCPUTestParams("ck804eh", "ck804",
54821bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
54921bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
55021bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
55121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
55221bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
55321bce900SZi Xuan Wu         CSKYCPUTestParams("ck804et", "ck804",
55421bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
55521bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
55621bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
55721bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
55821bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
55921bce900SZi Xuan Wu         CSKYCPUTestParams("ck804eht", "ck804",
56021bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
56121bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
56221bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
56321bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
56421bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
56521bce900SZi Xuan Wu         CSKYCPUTestParams("ck804ef", "ck804",
56621bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
56721bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
56821bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG |
56921bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
57021bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV |
57121bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3),
57221bce900SZi Xuan Wu         CSKYCPUTestParams("ck804efh", "ck804",
57321bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
57421bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
57521bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG |
57621bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
57721bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV |
57821bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3),
57921bce900SZi Xuan Wu         CSKYCPUTestParams("ck804ft", "ck804",
58021bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
58121bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
58221bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
58321bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
58421bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
58521bce900SZi Xuan Wu         CSKYCPUTestParams("ck804eft", "ck804",
58621bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
58721bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
58821bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG |
58921bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
59021bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV |
59121bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3),
59221bce900SZi Xuan Wu         CSKYCPUTestParams("ck804efht", "ck804",
59321bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
59421bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
59521bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG |
59621bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
59721bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV |
59821bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3),
59921bce900SZi Xuan Wu         CSKYCPUTestParams("e804d", "ck804",
60021bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
60121bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
60221bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
60321bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
60421bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
60521bce900SZi Xuan Wu         CSKYCPUTestParams("e804dt", "ck804",
60621bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
60721bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_2E3 |
60821bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
60921bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
61021bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
61121bce900SZi Xuan Wu         CSKYCPUTestParams("e804f", "ck804",
61221bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
61321bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
61421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
61521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
61621bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
61721bce900SZi Xuan Wu         CSKYCPUTestParams("e804ft", "ck804",
61821bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
61921bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
62021bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
62121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 |
62221bce900SZi Xuan Wu                               CSKY::AEK_3E3R3),
62321bce900SZi Xuan Wu         CSKYCPUTestParams("e804df", "ck804",
62421bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
62521bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
62621bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG |
62721bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
62821bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV |
62921bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3),
63021bce900SZi Xuan Wu         CSKYCPUTestParams("e804dft", "ck804",
63121bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
63221bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
63321bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG |
63421bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
63521bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV |
63621bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3),
63721bce900SZi Xuan Wu 
63821bce900SZi Xuan Wu         CSKYCPUTestParams("ck805", "ck805",
63921bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
64021bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
64121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG |
64221bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 |
64321bce900SZi Xuan Wu                               CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3),
64421bce900SZi Xuan Wu         CSKYCPUTestParams("ck805e", "ck805",
64521bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
64621bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
64721bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV |
64821bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_3E3R2 |
64921bce900SZi Xuan Wu                               CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 |
65021bce900SZi Xuan Wu                               CSKY::AEK_VDSP2E3),
65121bce900SZi Xuan Wu         CSKYCPUTestParams("ck805f", "ck805",
65221bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
65321bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
65421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
65521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG |
65621bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 |
65721bce900SZi Xuan Wu                               CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3),
65821bce900SZi Xuan Wu         CSKYCPUTestParams("ck805t", "ck805",
65921bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
66021bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
66121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG |
66221bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 |
66321bce900SZi Xuan Wu                               CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3),
66421bce900SZi Xuan Wu         CSKYCPUTestParams("ck805ef", "ck805",
66521bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
66621bce900SZi Xuan Wu                               CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
66721bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
66821bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
66921bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG |
67021bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 |
67121bce900SZi Xuan Wu                               CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3),
67221bce900SZi Xuan Wu         CSKYCPUTestParams("ck805et", "ck805",
67321bce900SZi Xuan Wu                           CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
67421bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
67521bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV |
67621bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_3E3R2 |
67721bce900SZi Xuan Wu                               CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 |
67821bce900SZi Xuan Wu                               CSKY::AEK_VDSP2E3),
67921bce900SZi Xuan Wu         CSKYCPUTestParams("ck805ft", "ck805",
68021bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
68121bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
68221bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
68321bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG |
68421bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 |
68521bce900SZi Xuan Wu                               CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3),
68621bce900SZi Xuan Wu         CSKYCPUTestParams("ck805eft", "ck805",
68721bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
68821bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::AEK_DSPV2 |
68921bce900SZi Xuan Wu                               CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 |
69021bce900SZi Xuan Wu                               CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST |
69121bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_HWDIV |
69221bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::MAEK_3E3R2 |
69321bce900SZi Xuan Wu                               CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 |
69421bce900SZi Xuan Wu                               CSKY::AEK_VDSP2E3),
69521bce900SZi Xuan Wu         CSKYCPUTestParams("i805", "ck805",
69621bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_2E3 | CSKY::AEK_MP |
69721bce900SZi Xuan Wu                               CSKY::AEK_TRUST | CSKY::AEK_NVIC |
69821bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG |
69921bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 |
70021bce900SZi Xuan Wu                               CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3),
70121bce900SZi Xuan Wu         CSKYCPUTestParams("i805f", "ck805",
70221bce900SZi Xuan Wu                           CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 |
70321bce900SZi Xuan Wu                               CSKY::AEK_FLOAT1E3 | CSKY::MAEK_2E3 |
70421bce900SZi Xuan Wu                               CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC |
70521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG |
70621bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 |
70721bce900SZi Xuan Wu                               CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3),
70821bce900SZi Xuan Wu 
70921bce900SZi Xuan Wu         CSKYCPUTestParams("ck807", "ck807",
71021bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_3E7 | CSKY::MAEK_MP |
71121bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
71221bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
71321bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
71421bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
71521bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE),
71621bce900SZi Xuan Wu         CSKYCPUTestParams("ck807e", "ck807",
71721bce900SZi Xuan Wu                           CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
71821bce900SZi Xuan Wu                               CSKY::MAEK_3E7 | CSKY::MAEK_MP |
71921bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
72021bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
72121bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
72221bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
72321bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE),
72421bce900SZi Xuan Wu         CSKYCPUTestParams(
72521bce900SZi Xuan Wu             "ck807f", "ck807",
72621bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
72721bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 |
72821bce900SZi Xuan Wu                 CSKY::AEK_FLOAT3E4 | CSKY::MAEK_3E7 | CSKY::MAEK_MP |
72921bce900SZi Xuan Wu                 CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV |
73021bce900SZi Xuan Wu                 CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
73121bce900SZi Xuan Wu                 CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC |
73221bce900SZi Xuan Wu                 CSKY::AEK_CACHE),
73321bce900SZi Xuan Wu         CSKYCPUTestParams(
73421bce900SZi Xuan Wu             "ck807ef", "ck807",
73521bce900SZi Xuan Wu             CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
73621bce900SZi Xuan Wu                 CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
73721bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 |
73821bce900SZi Xuan Wu                 CSKY::AEK_FLOAT3E4 | CSKY::MAEK_3E7 | CSKY::MAEK_MP |
73921bce900SZi Xuan Wu                 CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV |
74021bce900SZi Xuan Wu                 CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
74121bce900SZi Xuan Wu                 CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC |
74221bce900SZi Xuan Wu                 CSKY::AEK_CACHE),
74321bce900SZi Xuan Wu         CSKYCPUTestParams("c807", "ck807",
74421bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_3E7 | CSKY::MAEK_MP |
74521bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
74621bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
74721bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
74821bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
74921bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE),
75021bce900SZi Xuan Wu         CSKYCPUTestParams(
75121bce900SZi Xuan Wu             "c807f", "ck807",
75221bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
75321bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 |
75421bce900SZi Xuan Wu                 CSKY::AEK_FLOAT3E4 | CSKY::MAEK_3E7 | CSKY::MAEK_MP |
75521bce900SZi Xuan Wu                 CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV |
75621bce900SZi Xuan Wu                 CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
75721bce900SZi Xuan Wu                 CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC |
75821bce900SZi Xuan Wu                 CSKY::AEK_CACHE),
75921bce900SZi Xuan Wu 
76021bce900SZi Xuan Wu         CSKYCPUTestParams("r807", "ck807",
76121bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_3E7 | CSKY::MAEK_MP |
76221bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
76321bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
76421bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
76521bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
76621bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE),
76721bce900SZi Xuan Wu         CSKYCPUTestParams(
76821bce900SZi Xuan Wu             "r807f", "ck807",
76921bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
77021bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 |
77121bce900SZi Xuan Wu                 CSKY::AEK_FLOAT3E4 | CSKY::MAEK_3E7 | CSKY::MAEK_MP |
77221bce900SZi Xuan Wu                 CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV |
77321bce900SZi Xuan Wu                 CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
77421bce900SZi Xuan Wu                 CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC |
77521bce900SZi Xuan Wu                 CSKY::AEK_CACHE),
77621bce900SZi Xuan Wu 
77721bce900SZi Xuan Wu         CSKYCPUTestParams("ck810e", "ck810",
77821bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP |
77921bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
78021bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
78121bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
78221bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
78321bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE),
78421bce900SZi Xuan Wu 
78521bce900SZi Xuan Wu         CSKYCPUTestParams("ck810et", "ck810",
78621bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP |
78721bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
78821bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
78921bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
79021bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
79121bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE),
79221bce900SZi Xuan Wu         CSKYCPUTestParams(
79321bce900SZi Xuan Wu             "ck810ef", "ck810",
79421bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
79521bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
79621bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
79721bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
79821bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
79921bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE),
80021bce900SZi Xuan Wu         CSKYCPUTestParams(
80121bce900SZi Xuan Wu             "ck810eft", "ck810",
80221bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
80321bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
80421bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
80521bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
80621bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
80721bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE),
80821bce900SZi Xuan Wu         CSKYCPUTestParams("ck810", "ck810",
80921bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP |
81021bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
81121bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
81221bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
81321bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
81421bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE),
81521bce900SZi Xuan Wu         CSKYCPUTestParams(
81621bce900SZi Xuan Wu             "ck810f", "ck810",
81721bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
81821bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
81921bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
82021bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
82121bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
82221bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE),
82321bce900SZi Xuan Wu         CSKYCPUTestParams("ck810t", "ck810",
82421bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP |
82521bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
82621bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
82721bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
82821bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
82921bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE),
83021bce900SZi Xuan Wu         CSKYCPUTestParams(
83121bce900SZi Xuan Wu             "ck810ft", "ck810",
83221bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
83321bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
83421bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
83521bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
83621bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
83721bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE),
83821bce900SZi Xuan Wu         CSKYCPUTestParams(
83921bce900SZi Xuan Wu             "c810", "ck810",
84021bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
84121bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
84221bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
84321bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
84421bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
84521bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE),
84621bce900SZi Xuan Wu         CSKYCPUTestParams(
84721bce900SZi Xuan Wu             "c810t", "ck810",
84821bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
84921bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
85021bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
85121bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
85221bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
85321bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE),
85421bce900SZi Xuan Wu 
85521bce900SZi Xuan Wu         CSKYCPUTestParams("ck810v", "ck810v",
85621bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP |
85721bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
85821bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
85921bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
86021bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
86121bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE |
86221bce900SZi Xuan Wu                               CSKY::AEK_VDSPV1),
86321bce900SZi Xuan Wu 
86421bce900SZi Xuan Wu         CSKYCPUTestParams("ck810ev", "ck810v",
86521bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP |
86621bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
86721bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
86821bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
86921bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
87021bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE |
87121bce900SZi Xuan Wu                               CSKY::AEK_VDSPV1),
87221bce900SZi Xuan Wu 
87321bce900SZi Xuan Wu         CSKYCPUTestParams("ck810tv", "ck810v",
87421bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP |
87521bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
87621bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
87721bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
87821bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
87921bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE |
88021bce900SZi Xuan Wu                               CSKY::AEK_VDSPV1),
88121bce900SZi Xuan Wu 
88221bce900SZi Xuan Wu         CSKYCPUTestParams("ck810etv", "ck810v",
88321bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_7E10 | CSKY::MAEK_MP |
88421bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
88521bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_EDSP |
88621bce900SZi Xuan Wu                               CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 |
88721bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
88821bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE |
88921bce900SZi Xuan Wu                               CSKY::AEK_VDSPV1),
89021bce900SZi Xuan Wu 
89121bce900SZi Xuan Wu         CSKYCPUTestParams(
89221bce900SZi Xuan Wu             "c810v", "ck810v",
89321bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
89421bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
89521bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
89621bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
89721bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
89821bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1),
89921bce900SZi Xuan Wu 
90021bce900SZi Xuan Wu         CSKYCPUTestParams(
90121bce900SZi Xuan Wu             "ck810fv", "ck810v",
90221bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
90321bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
90421bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
90521bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
90621bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
90721bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1),
90821bce900SZi Xuan Wu 
90921bce900SZi Xuan Wu         CSKYCPUTestParams(
91021bce900SZi Xuan Wu             "ck810efv", "ck810v",
91121bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
91221bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
91321bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
91421bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
91521bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
91621bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1),
91721bce900SZi Xuan Wu 
91821bce900SZi Xuan Wu         CSKYCPUTestParams(
91921bce900SZi Xuan Wu             "ck810ftv", "ck810v",
92021bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
92121bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
92221bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
92321bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
92421bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
92521bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1),
92621bce900SZi Xuan Wu 
92721bce900SZi Xuan Wu         CSKYCPUTestParams(
92821bce900SZi Xuan Wu             "c810tv", "ck810v",
92921bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
93021bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
93121bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
93221bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
93321bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
93421bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1),
93521bce900SZi Xuan Wu 
93621bce900SZi Xuan Wu         CSKYCPUTestParams(
93721bce900SZi Xuan Wu             "c810eftv", "ck810v",
93821bce900SZi Xuan Wu             CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU |
93921bce900SZi Xuan Wu                 CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::MAEK_7E10 |
94021bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
94121bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 |
94221bce900SZi Xuan Wu                 CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
94321bce900SZi Xuan Wu                 CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1),
94421bce900SZi Xuan Wu 
94521bce900SZi Xuan Wu         CSKYCPUTestParams("ck860", "ck860",
94621bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_10E60 | CSKY::MAEK_MP |
94721bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
94821bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 |
94921bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
95021bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE |
95121bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3),
95221bce900SZi Xuan Wu 
95321bce900SZi Xuan Wu         CSKYCPUTestParams(
95421bce900SZi Xuan Wu             "ck860f", "ck860",
95521bce900SZi Xuan Wu             CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF |
95621bce900SZi Xuan Wu                 CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60 | CSKY::MAEK_10E60 |
95721bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
95821bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
95921bce900SZi Xuan Wu                 CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE |
96021bce900SZi Xuan Wu                 CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3),
96121bce900SZi Xuan Wu 
96221bce900SZi Xuan Wu         CSKYCPUTestParams(
96321bce900SZi Xuan Wu             "c860", "ck860",
96421bce900SZi Xuan Wu             CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF |
96521bce900SZi Xuan Wu                 CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60 | CSKY::MAEK_10E60 |
96621bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
96721bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
96821bce900SZi Xuan Wu                 CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE |
96921bce900SZi Xuan Wu                 CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3),
97021bce900SZi Xuan Wu 
97121bce900SZi Xuan Wu         CSKYCPUTestParams("ck860v", "ck860v",
97221bce900SZi Xuan Wu                           CSKY::AEK_NONE | CSKY::MAEK_10E60 | CSKY::MAEK_MP |
97321bce900SZi Xuan Wu                               CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
97421bce900SZi Xuan Wu                               CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 |
97521bce900SZi Xuan Wu                               CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP |
97621bce900SZi Xuan Wu                               CSKY::AEK_NVIC | CSKY::AEK_CACHE |
97721bce900SZi Xuan Wu                               CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 |
97821bce900SZi Xuan Wu                               CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E60F),
97921bce900SZi Xuan Wu 
98021bce900SZi Xuan Wu         CSKYCPUTestParams(
98121bce900SZi Xuan Wu             "ck860fv", "ck860v",
98221bce900SZi Xuan Wu             CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF |
98321bce900SZi Xuan Wu                 CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60 | CSKY::MAEK_10E60 |
98421bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
98521bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
98621bce900SZi Xuan Wu                 CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE |
98721bce900SZi Xuan Wu                 CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 |
98821bce900SZi Xuan Wu                 CSKY::AEK_VDSP2E60F),
98921bce900SZi Xuan Wu 
99021bce900SZi Xuan Wu         CSKYCPUTestParams(
99121bce900SZi Xuan Wu             "c860v", "ck860v",
99221bce900SZi Xuan Wu             CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF |
99321bce900SZi Xuan Wu                 CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60 | CSKY::MAEK_10E60 |
99421bce900SZi Xuan Wu                 CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST |
99521bce900SZi Xuan Wu                 CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG |
99621bce900SZi Xuan Wu                 CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE |
99721bce900SZi Xuan Wu                 CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 |
99821bce900SZi Xuan Wu                 CSKY::AEK_VDSP2E60F)));
99921bce900SZi Xuan Wu 
100021bce900SZi Xuan Wu static constexpr unsigned NumCSKYCPUArchs = 145;
100121bce900SZi Xuan Wu 
TEST(TargetParserTest,testCSKYCPUArchList)100221bce900SZi Xuan Wu TEST(TargetParserTest, testCSKYCPUArchList) {
100321bce900SZi Xuan Wu   SmallVector<StringRef, NumCSKYCPUArchs> List;
100421bce900SZi Xuan Wu   CSKY::fillValidCPUArchList(List);
100521bce900SZi Xuan Wu 
100621bce900SZi Xuan Wu   // No list exists for these in this test suite, so ensure all are
100721bce900SZi Xuan Wu   // valid, and match the expected 'magic' count.
100821bce900SZi Xuan Wu   EXPECT_EQ(List.size(), NumCSKYCPUArchs);
100921bce900SZi Xuan Wu   for (StringRef CPU : List) {
101021bce900SZi Xuan Wu     EXPECT_NE(CSKY::parseCPUArch(CPU), CSKY::ArchKind::INVALID);
101121bce900SZi Xuan Wu   }
101221bce900SZi Xuan Wu }
101321bce900SZi Xuan Wu 
TEST(TargetParserTest,testInvalidCSKYArch)101421bce900SZi Xuan Wu TEST(TargetParserTest, testInvalidCSKYArch) {
101521bce900SZi Xuan Wu   auto InvalidArchStrings = {"ckv", "ckv99", "nock"};
101621bce900SZi Xuan Wu   for (const char *InvalidArch : InvalidArchStrings)
101721bce900SZi Xuan Wu     EXPECT_EQ(CSKY::parseArch(InvalidArch), CSKY::ArchKind::INVALID);
101821bce900SZi Xuan Wu }
101921bce900SZi Xuan Wu 
testCSKYArch(StringRef Arch,StringRef DefaultCPU)102021bce900SZi Xuan Wu bool testCSKYArch(StringRef Arch, StringRef DefaultCPU) {
102121bce900SZi Xuan Wu   CSKY::ArchKind AK = CSKY::parseArch(Arch);
102221bce900SZi Xuan Wu   bool Result = (AK != CSKY::ArchKind::INVALID);
102321bce900SZi Xuan Wu   Result &= CSKY::getDefaultCPU(Arch).equals(DefaultCPU);
102421bce900SZi Xuan Wu   return Result;
102521bce900SZi Xuan Wu }
102621bce900SZi Xuan Wu 
TEST(TargetParserTest,testCSKYArch)102721bce900SZi Xuan Wu TEST(TargetParserTest, testCSKYArch) {
102821bce900SZi Xuan Wu   EXPECT_TRUE(testCSKYArch("ck801", "ck801"));
102921bce900SZi Xuan Wu   EXPECT_TRUE(testCSKYArch("ck802", "ck802"));
103021bce900SZi Xuan Wu   EXPECT_TRUE(testCSKYArch("ck803", "ck803"));
103121bce900SZi Xuan Wu   EXPECT_TRUE(testCSKYArch("ck803s", "ck803s"));
103221bce900SZi Xuan Wu   EXPECT_TRUE(testCSKYArch("ck804", "ck804"));
103321bce900SZi Xuan Wu   EXPECT_TRUE(testCSKYArch("ck805", "ck805"));
103421bce900SZi Xuan Wu   EXPECT_TRUE(testCSKYArch("ck807", "ck807"));
103521bce900SZi Xuan Wu   EXPECT_TRUE(testCSKYArch("ck810", "ck810"));
103621bce900SZi Xuan Wu   EXPECT_TRUE(testCSKYArch("ck810v", "ck810v"));
103721bce900SZi Xuan Wu   EXPECT_TRUE(testCSKYArch("ck860", "ck860"));
103821bce900SZi Xuan Wu   EXPECT_TRUE(testCSKYArch("ck860v", "ck860v"));
103921bce900SZi Xuan Wu }
104021bce900SZi Xuan Wu 
TEST(TargetParserTest,CSKYFPUVersion)104121bce900SZi Xuan Wu TEST(TargetParserTest, CSKYFPUVersion) {
104221bce900SZi Xuan Wu   for (CSKY::CSKYFPUKind FK = static_cast<CSKY::CSKYFPUKind>(0);
104321bce900SZi Xuan Wu        FK <= CSKY::CSKYFPUKind::FK_LAST;
104421bce900SZi Xuan Wu        FK = static_cast<CSKY::CSKYFPUKind>(static_cast<unsigned>(FK) + 1))
104521bce900SZi Xuan Wu     if (FK == CSKY::FK_LAST || CSKY::getFPUName(FK) == "invalid")
104621bce900SZi Xuan Wu       EXPECT_EQ(CSKY::FPUVersion::NONE, CSKY::getFPUVersion(FK));
104721bce900SZi Xuan Wu     else
104821bce900SZi Xuan Wu       EXPECT_NE(CSKY::FPUVersion::NONE, CSKY::getFPUVersion(FK));
104921bce900SZi Xuan Wu }
105021bce900SZi Xuan Wu 
TEST(TargetParserTest,CSKYExtensionFeatures)105121bce900SZi Xuan Wu TEST(TargetParserTest, CSKYExtensionFeatures) {
105221bce900SZi Xuan Wu   std::map<uint64_t, std::vector<StringRef>> Extensions;
105321bce900SZi Xuan Wu 
105421bce900SZi Xuan Wu   for (auto &Ext : CSKY::CSKYARCHExtNames) {
105521bce900SZi Xuan Wu     if (Ext.Feature && Ext.NegFeature)
105621bce900SZi Xuan Wu       Extensions[Ext.ID] = {StringRef(Ext.Feature), StringRef(Ext.NegFeature)};
105721bce900SZi Xuan Wu   }
105821bce900SZi Xuan Wu 
105921bce900SZi Xuan Wu   std::vector<StringRef> Features;
106021bce900SZi Xuan Wu 
106121bce900SZi Xuan Wu   EXPECT_FALSE(CSKY::getExtensionFeatures(CSKY::AEK_INVALID, Features));
106221bce900SZi Xuan Wu 
106321bce900SZi Xuan Wu   for (auto &E : Extensions) {
106421bce900SZi Xuan Wu     CSKY::getExtensionFeatures(E.first, Features);
106521bce900SZi Xuan Wu     EXPECT_TRUE(llvm::is_contained(Features, E.second.at(0)));
106621bce900SZi Xuan Wu   }
1067*97e49605SZi Xuan Wu 
1068*97e49605SZi Xuan Wu   EXPECT_EQ(Extensions.size(), Features.size());
106921bce900SZi Xuan Wu }
107021bce900SZi Xuan Wu 
TEST(TargetParserTest,CSKYFPUFeatures)107121bce900SZi Xuan Wu TEST(TargetParserTest, CSKYFPUFeatures) {
107221bce900SZi Xuan Wu   std::vector<StringRef> Features;
107321bce900SZi Xuan Wu   for (CSKY::CSKYFPUKind FK = static_cast<CSKY::CSKYFPUKind>(0);
107421bce900SZi Xuan Wu        FK <= CSKY::CSKYFPUKind::FK_LAST;
107521bce900SZi Xuan Wu        FK = static_cast<CSKY::CSKYFPUKind>(static_cast<unsigned>(FK) + 1)) {
107621bce900SZi Xuan Wu     if (FK == CSKY::FK_INVALID || FK >= CSKY::FK_LAST)
107721bce900SZi Xuan Wu       EXPECT_FALSE(CSKY::getFPUFeatures(FK, Features));
107821bce900SZi Xuan Wu     else
107921bce900SZi Xuan Wu       EXPECT_TRUE(CSKY::getFPUFeatures(FK, Features));
108021bce900SZi Xuan Wu   }
108121bce900SZi Xuan Wu }
108221bce900SZi Xuan Wu 
TEST(TargetParserTest,CSKYArchExtFeature)108321bce900SZi Xuan Wu TEST(TargetParserTest, CSKYArchExtFeature) {
108421bce900SZi Xuan Wu   const char *ArchExt[][4] = {
108521bce900SZi Xuan Wu       {"fpuv2_sf", "nofpuv2_sf", "+fpuv2_sf", "-fpuv2_sf"},
108621bce900SZi Xuan Wu       {"fpuv2_df", "nofpuv2_df", "+fpuv2_df", "-fpuv2_df"},
108721bce900SZi Xuan Wu       {"fdivdu", "nofdivdu", "+fdivdu", "-fdivdu"},
108821bce900SZi Xuan Wu       {"fpuv3_hi", "nofpuv3_hi", "+fpuv3_hi", "-fpuv3_hi"},
108921bce900SZi Xuan Wu       {"fpuv3_hf", "nofpuv3_hf", "+fpuv3_hf", "-fpuv3_hf"},
109021bce900SZi Xuan Wu       {"fpuv2_df", "nofpuv2_df", "+fpuv2_df", "-fpuv2_df"},
109121bce900SZi Xuan Wu       {"fpuv3_sf", "nofpuv3_sf", "+fpuv3_sf", "-fpuv3_sf"},
109221bce900SZi Xuan Wu       {"fpuv3_df", "nofpuv3_df", "+fpuv3_df", "-fpuv3_df"},
109321bce900SZi Xuan Wu       {"floate1", "nofloate1", "+floate1", "-floate1"},
109421bce900SZi Xuan Wu       {"float1e2", "nofloat1e2", "+float1e2", "-float1e2"},
109521bce900SZi Xuan Wu       {"float1e3", "nofloat1e3", "+float1e3", "-float1e3"},
109621bce900SZi Xuan Wu       {"float3e4", "nofloat3e4", "+float3e4", "-float3e4"},
109721bce900SZi Xuan Wu       {"float7e60", "nofloat7e60", "+float7e60", "-float7e60"},
109821bce900SZi Xuan Wu       {"hwdiv", "nohwdiv", "+hwdiv", "-hwdiv"},
109921bce900SZi Xuan Wu       {"multiple_stld", "nomultiple_stld", "+multiple_stld", "-multiple_stld"},
110021bce900SZi Xuan Wu       {"pushpop", "nopushpop", "+pushpop", "-pushpop"},
110121bce900SZi Xuan Wu       {"edsp", "noedsp", "+edsp", "-edsp"},
110221bce900SZi Xuan Wu       {"dsp1e2", "nodsp1e2", "+dsp1e2", "-dsp1e2"},
110321bce900SZi Xuan Wu       {"dspe60", "nodspe60", "+dspe60", "-dspe60"},
110421bce900SZi Xuan Wu       {"dspv2", "nodspv2", "+dspv2", "-dspv2"},
110521bce900SZi Xuan Wu       {"dsp_silan", "nodsp_silan", "+dsp_silan", "-dsp_silan"},
110621bce900SZi Xuan Wu       {"elrw", "noelrw", "+elrw", "-elrw"},
110721bce900SZi Xuan Wu       {"trust", "notrust", "+trust", "-trust"},
110821bce900SZi Xuan Wu       {"java", "nojava", "+java", "-java"},
110921bce900SZi Xuan Wu       {"cache", "nocache", "+cache", "-cache"},
111021bce900SZi Xuan Wu       {"nvic", "nonvic", "+nvic", "-nvic"},
111121bce900SZi Xuan Wu       {"doloop", "nodoloop", "+doloop", "-doloop"},
111221bce900SZi Xuan Wu       {"high-registers", "nohigh-registers", "+high-registers",
111321bce900SZi Xuan Wu        "-high-registers"},
111421bce900SZi Xuan Wu       {"smart", "nosmart", "+smart", "-smart"},
111521bce900SZi Xuan Wu       {"vdsp2e3", "novdsp2e3", "+vdsp2e3", "-vdsp2e3"},
111621bce900SZi Xuan Wu       {"vdsp2e60f", "novdsp2e60f", "+vdsp2e60f", "-vdsp2e60f"},
111721bce900SZi Xuan Wu       {"vdspv2", "novdspv2", "+vdspv2", "-vdspv2"},
111821bce900SZi Xuan Wu       {"hard-tp", "nohard-tp", "+hard-tp", "-hard-tp"},
111921bce900SZi Xuan Wu       {"soft-tp", "nosoft-tp", "+soft-tp", "-soft-tp"},
112021bce900SZi Xuan Wu       {"istack", "noistack", "+istack", "-istack"},
112121bce900SZi Xuan Wu       {"constpool", "noconstpool", "+constpool", "-constpool"},
112221bce900SZi Xuan Wu       {"stack-size", "nostack-size", "+stack-size", "-stack-size"},
112321bce900SZi Xuan Wu       {"ccrt", "noccrt", "+ccrt", "-ccrt"},
112421bce900SZi Xuan Wu       {"vdspv1", "novdspv1", "+vdspv1", "-vdspv1"},
112521bce900SZi Xuan Wu       {"e1", "noe1", "+e1", "-e1"},
112621bce900SZi Xuan Wu       {"e2", "noe2", "+e2", "-e2"},
112721bce900SZi Xuan Wu       {"2e3", "no2e3", "+2e3", "-2e3"},
112821bce900SZi Xuan Wu       {"mp", "nomp", "+mp", "-mp"},
112921bce900SZi Xuan Wu       {"3e3r1", "no3e3r1", "+3e3r1", "-3e3r1"},
113021bce900SZi Xuan Wu       {"3e3r2", "no3e3r2", "+3e3r2", "-3e3r2"},
113121bce900SZi Xuan Wu       {"3e3r3", "no3e3r3", "+3e3r3", "-3e3r3"},
113221bce900SZi Xuan Wu       {"3e7", "no3e7", "+3e7", "-3e7"},
113321bce900SZi Xuan Wu       {"mp1e2", "nomp1e2", "+mp1e2", "-mp1e2"},
113421bce900SZi Xuan Wu       {"7e10", "no7e10", "+7e10", "-7e10"},
113521bce900SZi Xuan Wu       {"10e60", "no10e60", "+10e60", "-10e60"},
113621bce900SZi Xuan Wu   };
113721bce900SZi Xuan Wu 
113821bce900SZi Xuan Wu   for (unsigned i = 0; i < array_lengthof(ArchExt); i++) {
113921bce900SZi Xuan Wu     EXPECT_EQ(StringRef(ArchExt[i][2]), CSKY::getArchExtFeature(ArchExt[i][0]));
114021bce900SZi Xuan Wu     EXPECT_EQ(StringRef(ArchExt[i][3]), CSKY::getArchExtFeature(ArchExt[i][1]));
114121bce900SZi Xuan Wu   }
114221bce900SZi Xuan Wu }
114321bce900SZi Xuan Wu 
114421bce900SZi Xuan Wu } // namespace
1145