//===- CSKYTargetParser.def - CSKY target parsing defines -------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file provides defines to build up the CSKY target parser's logic. // //===----------------------------------------------------------------------===// // NOTE: NO INCLUDE GUARD DESIRED! #ifndef CSKY_FPU #define CSKY_FPU(NAME, KIND, VERSION) #endif CSKY_FPU("invalid", FK_INVALID, FPUVersion::NONE) CSKY_FPU("auto", FK_AUTO, FPUVersion::FPV2) CSKY_FPU("fpv2", FK_FPV2, FPUVersion::FPV2) CSKY_FPU("fpv2_divd", FK_FPV2_DIVD, FPUVersion::FPV2) CSKY_FPU("fpv2_sf", FK_FPV2_SF, FPUVersion::FPV2) CSKY_FPU("fpv3", FK_FPV3, FPUVersion::FPV3) CSKY_FPU("fpv3_hf", FK_FPV3_HF, FPUVersion::FPV3) CSKY_FPU("fpv3_hsf", FK_FPV3_HSF, FPUVersion::FPV3) CSKY_FPU("fpv3_sdf", FK_FPV3_SDF, FPUVersion::FPV3) #undef CSKY_FPU #ifndef CSKY_ARCH #define CSKY_ARCH(NAME, ID, ARCH_BASE_EXT) #endif CSKY_ARCH("invalid", INVALID, CSKY::AEK_INVALID) CSKY_ARCH("ck801", CK801, CSKY::MAEK_E1 | CSKY::AEK_TRUST) CSKY_ARCH("ck802", CK802, CSKY::MAEK_E2 | CSKY::AEK_TRUST | CSKY::AEK_NVIC) CSKY_ARCH("ck803", CK803, CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | CSKY::AEK_HWDIV) CSKY_ARCH("ck803s", CK803S, CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | CSKY::AEK_HWDIV) CSKY_ARCH("ck804", CK804, CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | CSKY::AEK_HWDIV | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3) CSKY_ARCH("ck805", CK805, CSKY::MAEK_2E3 | CSKY::AEK_MP | CSKY::AEK_TRUST | CSKY::AEK_NVIC | CSKY::AEK_HWDIV | CSKY::AEK_HIGHREG | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E3) CSKY_ARCH("ck807", CK807, CSKY::MAEK_3E7 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE) CSKY_ARCH("ck810", CK810, CSKY::MAEK_7E10 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE) CSKY_ARCH("ck810v", CK810V, CSKY::MAEK_7E10 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::AEK_VDSPV1) CSKY_ARCH("ck860", CK860, CSKY::MAEK_10E60 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3) CSKY_ARCH("ck860v", CK860V, CSKY::MAEK_10E60 | CSKY::MAEK_MP | CSKY::MAEK_MP1E2 | CSKY::AEK_TRUST | CSKY::AEK_HWDIV | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG | CSKY::AEK_HARDTP | CSKY::AEK_NVIC | CSKY::AEK_CACHE | CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_VDSPV2 | CSKY::AEK_VDSP2E60F) #undef CSKY_ARCH #ifndef CSKY_ARCH_EXT_NAME #define CSKY_ARCH_EXT_NAME(NAME, ID, FEATURE, NEGFEATURE) #endif CSKY_ARCH_EXT_NAME("invalid", CSKY::AEK_INVALID, nullptr, nullptr) CSKY_ARCH_EXT_NAME("none", CSKY::AEK_NONE, nullptr, nullptr) CSKY_ARCH_EXT_NAME("fpuv2_sf", CSKY::AEK_FPUV2SF, "+fpuv2_sf", "-fpuv2_sf") CSKY_ARCH_EXT_NAME("fpuv2_df", CSKY::AEK_FPUV2DF, "+fpuv2_df", "-fpuv2_df") CSKY_ARCH_EXT_NAME("fdivdu", CSKY::AEK_FDIVDU, "+fdivdu", "-fdivdu") CSKY_ARCH_EXT_NAME("fpuv3_hi", CSKY::AEK_FPUV3HI, "+fpuv3_hi", "-fpuv3_hi") CSKY_ARCH_EXT_NAME("fpuv3_hf", CSKY::AEK_FPUV3HF, "+fpuv3_hf", "-fpuv3_hf") CSKY_ARCH_EXT_NAME("fpuv3_sf", CSKY::AEK_FPUV3SF, "+fpuv3_sf", "-fpuv3_sf") CSKY_ARCH_EXT_NAME("fpuv3_df", CSKY::AEK_FPUV3DF, "+fpuv3_df", "-fpuv3_df") CSKY_ARCH_EXT_NAME("floate1", CSKY::AEK_FLOATE1, "+floate1", "-floate1") CSKY_ARCH_EXT_NAME("float1e2", CSKY::AEK_FLOAT1E2, "+float1e2", "-float1e2") CSKY_ARCH_EXT_NAME("float1e3", CSKY::AEK_FLOAT1E3, "+float1e3", "-float1e3") CSKY_ARCH_EXT_NAME("float3e4", CSKY::AEK_FLOAT3E4, "+float3e4", "-float3e4") CSKY_ARCH_EXT_NAME("float7e60", CSKY::AEK_FLOAT7E60, "+float7e60", "-float7e60") CSKY_ARCH_EXT_NAME("hwdiv", CSKY::AEK_HWDIV, "+hwdiv", "-hwdiv") CSKY_ARCH_EXT_NAME("multiple_stld", CSKY::AEK_STLD, "+multiple_stld", "-multiple_stld") CSKY_ARCH_EXT_NAME("pushpop", CSKY::AEK_PUSHPOP, "+pushpop", "-pushpop") CSKY_ARCH_EXT_NAME("edsp", CSKY::AEK_EDSP, "+edsp", "-edsp") CSKY_ARCH_EXT_NAME("dsp1e2", CSKY::AEK_DSP1E2, "+dsp1e2", "-dsp1e2") CSKY_ARCH_EXT_NAME("dspe60", CSKY::AEK_DSPE60, "+dspe60", "-dspe60") CSKY_ARCH_EXT_NAME("dspv2", CSKY::AEK_DSPV2, "+dspv2", "-dspv2") CSKY_ARCH_EXT_NAME("dsp_silan", CSKY::AEK_DSPSILAN, "+dsp_silan", "-dsp_silan") CSKY_ARCH_EXT_NAME("elrw", CSKY::AEK_ELRW, "+elrw", "-elrw") CSKY_ARCH_EXT_NAME("trust", CSKY::AEK_TRUST, "+trust", "-trust") CSKY_ARCH_EXT_NAME("java", CSKY::AEK_JAVA, "+java", "-java") CSKY_ARCH_EXT_NAME("cache", CSKY::AEK_CACHE, "+cache", "-cache") CSKY_ARCH_EXT_NAME("nvic", CSKY::AEK_NVIC, "+nvic", "-nvic") CSKY_ARCH_EXT_NAME("doloop", CSKY::AEK_DOLOOP, "+doloop", "-doloop") CSKY_ARCH_EXT_NAME("high-registers", CSKY::AEK_HIGHREG, "+high-registers", "-high-registers") CSKY_ARCH_EXT_NAME("smart", CSKY::AEK_SMART, "+smart", "-smart") CSKY_ARCH_EXT_NAME("vdsp2e3", CSKY::AEK_VDSP2E3, "+vdsp2e3", "-vdsp2e3") CSKY_ARCH_EXT_NAME("vdsp2e60f", CSKY::AEK_VDSP2E60F, "+vdsp2e60f", "-vdsp2e60f") CSKY_ARCH_EXT_NAME("vdspv2", CSKY::AEK_VDSPV2, "+vdspv2", "-vdspv2") CSKY_ARCH_EXT_NAME("hard-tp", CSKY::AEK_HARDTP, "+hard-tp", "-hard-tp") CSKY_ARCH_EXT_NAME("soft-tp", CSKY::AEK_SOFTTP, "+soft-tp", "-soft-tp") CSKY_ARCH_EXT_NAME("istack", CSKY::AEK_ISTACK, "+istack", "-istack") CSKY_ARCH_EXT_NAME("constpool", CSKY::AEK_CONSTPOOL, "+constpool", "-constpool") CSKY_ARCH_EXT_NAME("stack-size", CSKY::AEK_STACKSIZE, "+stack-size", "-stack-size") CSKY_ARCH_EXT_NAME("ccrt", CSKY::AEK_CCRT, "+ccrt", "-ccrt") CSKY_ARCH_EXT_NAME("vdspv1", CSKY::AEK_VDSPV1, "+vdspv1", "-vdspv1") CSKY_ARCH_EXT_NAME("e1", CSKY::AEK_E1, "+e1", "-e1") CSKY_ARCH_EXT_NAME("e2", CSKY::AEK_E2, "+e2", "-e2") CSKY_ARCH_EXT_NAME("2e3", CSKY::AEK_2E3, "+2e3", "-2e3") CSKY_ARCH_EXT_NAME("mp", CSKY::AEK_MP, "+mp", "-mp") CSKY_ARCH_EXT_NAME("3e3r1", CSKY::AEK_3E3R1, "+3e3r1", "-3e3r1") CSKY_ARCH_EXT_NAME("3e3r2", CSKY::AEK_3E3R2, "+3e3r2", "-3e3r2") CSKY_ARCH_EXT_NAME("3e3r3", CSKY::AEK_3E3R3, "+3e3r3", "-3e3r3") CSKY_ARCH_EXT_NAME("3e7", CSKY::AEK_3E7, "+3e7", "-3e7") CSKY_ARCH_EXT_NAME("mp1e2", CSKY::AEK_MP1E2, "+mp1e2", "-mp1e2") CSKY_ARCH_EXT_NAME("7e10", CSKY::AEK_7E10, "+7e10", "-7e10") CSKY_ARCH_EXT_NAME("10e60", CSKY::AEK_10E60, "+10e60", "-10e60") #undef CSKY_ARCH_EXT_NAME #ifndef CSKY_CPU_NAME #define CSKY_CPU_NAME(NAME, ARCH_ID, DEFAULT_EXT) #endif CSKY_CPU_NAME("ck801", CK801, CSKY::AEK_NONE) CSKY_CPU_NAME("ck801t", CK801, CSKY::AEK_NONE) CSKY_CPU_NAME("e801", CK801, CSKY::AEK_NONE) CSKY_CPU_NAME("ck802", CK802, CSKY::AEK_NONE) CSKY_CPU_NAME("ck802t", CK802, CSKY::AEK_NONE) CSKY_CPU_NAME("ck802j", CK802, CSKY::AEK_JAVA) CSKY_CPU_NAME("e802", CK802, CSKY::AEK_NONE) CSKY_CPU_NAME("e802t", CK802, CSKY::AEK_NONE) CSKY_CPU_NAME("s802", CK802, CSKY::AEK_NONE) CSKY_CPU_NAME("s802t", CK802, CSKY::AEK_NONE) CSKY_CPU_NAME("ck803", CK803, CSKY::AEK_NONE) CSKY_CPU_NAME("ck803h", CK803, CSKY::AEK_NONE) CSKY_CPU_NAME("ck803t", CK803, CSKY::AEK_NONE) CSKY_CPU_NAME("ck803ht", CK803, CSKY::AEK_NONE) CSKY_CPU_NAME("ck803f", CK803, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803fh", CK803, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803e", CK803, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60) CSKY_CPU_NAME("ck803eh", CK803, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60) CSKY_CPU_NAME("ck803et", CK803, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60) CSKY_CPU_NAME("ck803eht", CK803, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60) CSKY_CPU_NAME("ck803ef", CK803, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803efh", CK803, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803ft", CK803, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803eft", CK803, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803efht", CK803, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803r1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803r2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803r3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803hr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803hr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803hr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803tr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803tr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803tr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803htr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803htr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803htr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2) CSKY_CPU_NAME("ck803fr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803fr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803fr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803fhr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803fhr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803fhr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803er1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803er2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803er3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803ehr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803ehr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803ehr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803etr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803etr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803etr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803ehtr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803ehtr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803ehtr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803efr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803efr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803efr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803efhr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803efhr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803efhr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803ftr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803ftr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803ftr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803eftr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803eftr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803eftr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803efhtr1", CK803, CSKY::MAEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803efhtr2", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck803efhtr3", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3 | CSKY::AEK_DSPV2 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("s803", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3) CSKY_CPU_NAME("s803t", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3) CSKY_CPU_NAME("e803", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3) CSKY_CPU_NAME("e803t", CK803, CSKY::MAEK_3E3R2 | CSKY::AEK_3E3R3) CSKY_CPU_NAME("ck803s", CK803S, CSKY::AEK_NONE) CSKY_CPU_NAME("ck803st", CK803S, CSKY::AEK_NONE) CSKY_CPU_NAME("ck803se", CK803S, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60) CSKY_CPU_NAME("ck803sf", CK803S, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803sef", CK803S, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck803seft", CK803S, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck804", CK804, CSKY::AEK_NONE) CSKY_CPU_NAME("ck804h", CK804, CSKY::AEK_NONE) CSKY_CPU_NAME("ck804t", CK804, CSKY::AEK_NONE) CSKY_CPU_NAME("ck804ht", CK804, CSKY::AEK_NONE) CSKY_CPU_NAME("ck804f", CK804, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck804fh", CK804, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck804e", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck804eh", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck804et", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck804eht", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck804ef", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck804efh", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck804ft", CK804, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck804eft", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck804efht", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("e804d", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("e804dt", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("e804f", CK804, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("e804ft", CK804, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("e804df", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("e804dft", CK804, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_HIGHREG) CSKY_CPU_NAME("ck805", CK805, CSKY::AEK_NONE) CSKY_CPU_NAME("ck805e", CK805, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3) CSKY_CPU_NAME("ck805f", CK805, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck805t", CK805, CSKY::AEK_NONE) CSKY_CPU_NAME("ck805ef", CK805, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3 | CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck805et", CK805, CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3) CSKY_CPU_NAME("ck805ft", CK805, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck805eft", CK805, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_DSPV2 | CSKY::AEK_3E3R1 | CSKY::AEK_3E3R3) CSKY_CPU_NAME("i805", CK805, CSKY::AEK_NONE) CSKY_CPU_NAME("i805f", CK805, CSKY::AEK_FPUV2SF | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E3) CSKY_CPU_NAME("ck807", CK807, CSKY::AEK_NONE) CSKY_CPU_NAME("ck807e", CK807, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60) CSKY_CPU_NAME("ck807f", CK807, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_FLOAT3E4) CSKY_CPU_NAME("ck807ef", CK807, CSKY::AEK_EDSP | CSKY::AEK_DSP1E2 | CSKY::AEK_DSPE60 | CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_FLOAT3E4) CSKY_CPU_NAME("c807", CK807, CSKY::AEK_NONE) CSKY_CPU_NAME("c807f", CK807, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_FLOAT3E4) CSKY_CPU_NAME("r807", CK807, CSKY::AEK_NONE) CSKY_CPU_NAME("r807f", CK807, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2 | CSKY::AEK_FLOAT1E3 | CSKY::AEK_FLOAT3E4) CSKY_CPU_NAME("ck810e", CK810, CSKY::AEK_NONE) CSKY_CPU_NAME("ck810et", CK810, CSKY::AEK_NONE) CSKY_CPU_NAME("ck810ef", CK810, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("ck810eft", CK810, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("ck810", CK810, CSKY::AEK_NONE) CSKY_CPU_NAME("ck810f", CK810, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("ck810t", CK810, CSKY::AEK_NONE) CSKY_CPU_NAME("ck810ft", CK810, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("c810", CK810, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("c810t", CK810, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("ck810v", CK810V, CSKY::AEK_NONE) CSKY_CPU_NAME("ck810ev", CK810V, CSKY::AEK_NONE) CSKY_CPU_NAME("ck810tv", CK810V, CSKY::AEK_NONE) CSKY_CPU_NAME("ck810etv", CK810V, CSKY::AEK_NONE) CSKY_CPU_NAME("c810v", CK810V, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("ck810fv", CK810V, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("ck810efv", CK810V, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("ck810ftv", CK810V, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("c810tv", CK810V, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("c810eftv", CK810V, CSKY::AEK_FPUV2SF | CSKY::AEK_FPUV2DF | CSKY::AEK_FDIVDU | CSKY::AEK_FLOATE1 | CSKY::AEK_FLOAT1E2) CSKY_CPU_NAME("ck860", CK860, CSKY::AEK_NONE) CSKY_CPU_NAME("ck860f", CK860, CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF | CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60) CSKY_CPU_NAME("c860", CK860, CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF | CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60) CSKY_CPU_NAME("ck860v", CK860V, CSKY::AEK_NONE) CSKY_CPU_NAME("ck860fv", CK860V, CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF | CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60) CSKY_CPU_NAME("c860v", CK860V, CSKY::AEK_FPUV3HI | CSKY::AEK_FPUV3HF | CSKY::AEK_FPUV3SF | CSKY::AEK_FPUV3DF | CSKY::AEK_FLOAT7E60) // Invalid CPU CSKY_CPU_NAME("invalid", INVALID, CSKY::AEK_INVALID) #undef CSKY_CPU_NAME