|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef ASMJIT_ARM_A64GLOBALS_H_INCLUDED
|
|
|
#define ASMJIT_ARM_A64GLOBALS_H_INCLUDED
|
|
|
|
|
|
#include "../arm/armglobals.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ASMJIT_BEGIN_SUB_NAMESPACE(a64)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
struct Inst {
|
|
|
|
|
|
enum Id : uint32_t {
|
|
|
|
|
|
kIdNone = 0,
|
|
|
kIdAdc,
|
|
|
kIdAdcs,
|
|
|
kIdAdd,
|
|
|
kIdAddg,
|
|
|
kIdAdds,
|
|
|
kIdAdr,
|
|
|
kIdAdrp,
|
|
|
kIdAnd,
|
|
|
kIdAnds,
|
|
|
kIdAsr,
|
|
|
kIdAsrv,
|
|
|
kIdAt,
|
|
|
kIdAutda,
|
|
|
kIdAutdza,
|
|
|
kIdAutdb,
|
|
|
kIdAutdzb,
|
|
|
kIdAutia,
|
|
|
kIdAutia1716,
|
|
|
kIdAutiasp,
|
|
|
kIdAutiaz,
|
|
|
kIdAutib,
|
|
|
kIdAutib1716,
|
|
|
kIdAutibsp,
|
|
|
kIdAutibz,
|
|
|
kIdAutiza,
|
|
|
kIdAutizb,
|
|
|
kIdAxflag,
|
|
|
kIdB,
|
|
|
kIdBfc,
|
|
|
kIdBfi,
|
|
|
kIdBfm,
|
|
|
kIdBfxil,
|
|
|
kIdBic,
|
|
|
kIdBics,
|
|
|
kIdBl,
|
|
|
kIdBlr,
|
|
|
kIdBr,
|
|
|
kIdBrk,
|
|
|
kIdCas,
|
|
|
kIdCasa,
|
|
|
kIdCasab,
|
|
|
kIdCasah,
|
|
|
kIdCasal,
|
|
|
kIdCasalb,
|
|
|
kIdCasalh,
|
|
|
kIdCasb,
|
|
|
kIdCash,
|
|
|
kIdCasl,
|
|
|
kIdCaslb,
|
|
|
kIdCaslh,
|
|
|
kIdCasp,
|
|
|
kIdCaspa,
|
|
|
kIdCaspal,
|
|
|
kIdCaspl,
|
|
|
kIdCbnz,
|
|
|
kIdCbz,
|
|
|
kIdCcmn,
|
|
|
kIdCcmp,
|
|
|
kIdCfinv,
|
|
|
kIdCinc,
|
|
|
kIdCinv,
|
|
|
kIdClrex,
|
|
|
kIdCls,
|
|
|
kIdClz,
|
|
|
kIdCmn,
|
|
|
kIdCmp,
|
|
|
kIdCmpp,
|
|
|
kIdCneg,
|
|
|
kIdCrc32b,
|
|
|
kIdCrc32cb,
|
|
|
kIdCrc32ch,
|
|
|
kIdCrc32cw,
|
|
|
kIdCrc32cx,
|
|
|
kIdCrc32h,
|
|
|
kIdCrc32w,
|
|
|
kIdCrc32x,
|
|
|
kIdCsdb,
|
|
|
kIdCsel,
|
|
|
kIdCset,
|
|
|
kIdCsetm,
|
|
|
kIdCsinc,
|
|
|
kIdCsinv,
|
|
|
kIdCsneg,
|
|
|
kIdDc,
|
|
|
kIdDcps1,
|
|
|
kIdDcps2,
|
|
|
kIdDcps3,
|
|
|
kIdDgh,
|
|
|
kIdDmb,
|
|
|
kIdDrps,
|
|
|
kIdDsb,
|
|
|
kIdEon,
|
|
|
kIdEor,
|
|
|
kIdEsb,
|
|
|
kIdExtr,
|
|
|
kIdEret,
|
|
|
kIdGmi,
|
|
|
kIdHint,
|
|
|
kIdHlt,
|
|
|
kIdHvc,
|
|
|
kIdIc,
|
|
|
kIdIsb,
|
|
|
kIdLdadd,
|
|
|
kIdLdadda,
|
|
|
kIdLdaddab,
|
|
|
kIdLdaddah,
|
|
|
kIdLdaddal,
|
|
|
kIdLdaddalb,
|
|
|
kIdLdaddalh,
|
|
|
kIdLdaddb,
|
|
|
kIdLdaddh,
|
|
|
kIdLdaddl,
|
|
|
kIdLdaddlb,
|
|
|
kIdLdaddlh,
|
|
|
kIdLdar,
|
|
|
kIdLdarb,
|
|
|
kIdLdarh,
|
|
|
kIdLdaxp,
|
|
|
kIdLdaxr,
|
|
|
kIdLdaxrb,
|
|
|
kIdLdaxrh,
|
|
|
kIdLdclr,
|
|
|
kIdLdclra,
|
|
|
kIdLdclrab,
|
|
|
kIdLdclrah,
|
|
|
kIdLdclral,
|
|
|
kIdLdclralb,
|
|
|
kIdLdclralh,
|
|
|
kIdLdclrb,
|
|
|
kIdLdclrh,
|
|
|
kIdLdclrl,
|
|
|
kIdLdclrlb,
|
|
|
kIdLdclrlh,
|
|
|
kIdLdeor,
|
|
|
kIdLdeora,
|
|
|
kIdLdeorab,
|
|
|
kIdLdeorah,
|
|
|
kIdLdeoral,
|
|
|
kIdLdeoralb,
|
|
|
kIdLdeoralh,
|
|
|
kIdLdeorb,
|
|
|
kIdLdeorh,
|
|
|
kIdLdeorl,
|
|
|
kIdLdeorlb,
|
|
|
kIdLdeorlh,
|
|
|
kIdLdg,
|
|
|
kIdLdgm,
|
|
|
kIdLdlar,
|
|
|
kIdLdlarb,
|
|
|
kIdLdlarh,
|
|
|
kIdLdnp,
|
|
|
kIdLdp,
|
|
|
kIdLdpsw,
|
|
|
kIdLdr,
|
|
|
kIdLdraa,
|
|
|
kIdLdrab,
|
|
|
kIdLdrb,
|
|
|
kIdLdrh,
|
|
|
kIdLdrsb,
|
|
|
kIdLdrsh,
|
|
|
kIdLdrsw,
|
|
|
kIdLdset,
|
|
|
kIdLdseta,
|
|
|
kIdLdsetab,
|
|
|
kIdLdsetah,
|
|
|
kIdLdsetal,
|
|
|
kIdLdsetalb,
|
|
|
kIdLdsetalh,
|
|
|
kIdLdsetb,
|
|
|
kIdLdseth,
|
|
|
kIdLdsetl,
|
|
|
kIdLdsetlb,
|
|
|
kIdLdsetlh,
|
|
|
kIdLdsmax,
|
|
|
kIdLdsmaxa,
|
|
|
kIdLdsmaxab,
|
|
|
kIdLdsmaxah,
|
|
|
kIdLdsmaxal,
|
|
|
kIdLdsmaxalb,
|
|
|
kIdLdsmaxalh,
|
|
|
kIdLdsmaxb,
|
|
|
kIdLdsmaxh,
|
|
|
kIdLdsmaxl,
|
|
|
kIdLdsmaxlb,
|
|
|
kIdLdsmaxlh,
|
|
|
kIdLdsmin,
|
|
|
kIdLdsmina,
|
|
|
kIdLdsminab,
|
|
|
kIdLdsminah,
|
|
|
kIdLdsminal,
|
|
|
kIdLdsminalb,
|
|
|
kIdLdsminalh,
|
|
|
kIdLdsminb,
|
|
|
kIdLdsminh,
|
|
|
kIdLdsminl,
|
|
|
kIdLdsminlb,
|
|
|
kIdLdsminlh,
|
|
|
kIdLdtr,
|
|
|
kIdLdtrb,
|
|
|
kIdLdtrh,
|
|
|
kIdLdtrsb,
|
|
|
kIdLdtrsh,
|
|
|
kIdLdtrsw,
|
|
|
kIdLdumax,
|
|
|
kIdLdumaxa,
|
|
|
kIdLdumaxab,
|
|
|
kIdLdumaxah,
|
|
|
kIdLdumaxal,
|
|
|
kIdLdumaxalb,
|
|
|
kIdLdumaxalh,
|
|
|
kIdLdumaxb,
|
|
|
kIdLdumaxh,
|
|
|
kIdLdumaxl,
|
|
|
kIdLdumaxlb,
|
|
|
kIdLdumaxlh,
|
|
|
kIdLdumin,
|
|
|
kIdLdumina,
|
|
|
kIdLduminab,
|
|
|
kIdLduminah,
|
|
|
kIdLduminal,
|
|
|
kIdLduminalb,
|
|
|
kIdLduminalh,
|
|
|
kIdLduminb,
|
|
|
kIdLduminh,
|
|
|
kIdLduminl,
|
|
|
kIdLduminlb,
|
|
|
kIdLduminlh,
|
|
|
kIdLdur,
|
|
|
kIdLdurb,
|
|
|
kIdLdurh,
|
|
|
kIdLdursb,
|
|
|
kIdLdursh,
|
|
|
kIdLdursw,
|
|
|
kIdLdxp,
|
|
|
kIdLdxr,
|
|
|
kIdLdxrb,
|
|
|
kIdLdxrh,
|
|
|
kIdLsl,
|
|
|
kIdLslv,
|
|
|
kIdLsr,
|
|
|
kIdLsrv,
|
|
|
kIdMadd,
|
|
|
kIdMneg,
|
|
|
kIdMov,
|
|
|
kIdMovk,
|
|
|
kIdMovn,
|
|
|
kIdMovz,
|
|
|
kIdMrs,
|
|
|
kIdMsr,
|
|
|
kIdMsub,
|
|
|
kIdMul,
|
|
|
kIdMvn,
|
|
|
kIdNeg,
|
|
|
kIdNegs,
|
|
|
kIdNgc,
|
|
|
kIdNgcs,
|
|
|
kIdNop,
|
|
|
kIdOrn,
|
|
|
kIdOrr,
|
|
|
kIdPacda,
|
|
|
kIdPacdb,
|
|
|
kIdPacdza,
|
|
|
kIdPacdzb,
|
|
|
kIdPacga,
|
|
|
kIdPrfm,
|
|
|
kIdPssbb,
|
|
|
kIdRbit,
|
|
|
kIdRet,
|
|
|
kIdRev,
|
|
|
kIdRev16,
|
|
|
kIdRev32,
|
|
|
kIdRev64,
|
|
|
kIdRor,
|
|
|
kIdRorv,
|
|
|
kIdSbc,
|
|
|
kIdSbcs,
|
|
|
kIdSbfiz,
|
|
|
kIdSbfm,
|
|
|
kIdSbfx,
|
|
|
kIdSdiv,
|
|
|
kIdSetf8,
|
|
|
kIdSetf16,
|
|
|
kIdSev,
|
|
|
kIdSevl,
|
|
|
kIdSmaddl,
|
|
|
kIdSmc,
|
|
|
kIdSmnegl,
|
|
|
kIdSmsubl,
|
|
|
kIdSmulh,
|
|
|
kIdSmull,
|
|
|
kIdSsbb,
|
|
|
kIdSt2g,
|
|
|
kIdStadd,
|
|
|
kIdStaddl,
|
|
|
kIdStaddb,
|
|
|
kIdStaddlb,
|
|
|
kIdStaddh,
|
|
|
kIdStaddlh,
|
|
|
kIdStclr,
|
|
|
kIdStclrl,
|
|
|
kIdStclrb,
|
|
|
kIdStclrlb,
|
|
|
kIdStclrh,
|
|
|
kIdStclrlh,
|
|
|
kIdSteor,
|
|
|
kIdSteorl,
|
|
|
kIdSteorb,
|
|
|
kIdSteorlb,
|
|
|
kIdSteorh,
|
|
|
kIdSteorlh,
|
|
|
kIdStg,
|
|
|
kIdStgm,
|
|
|
kIdStgp,
|
|
|
kIdStllr,
|
|
|
kIdStllrb,
|
|
|
kIdStllrh,
|
|
|
kIdStlr,
|
|
|
kIdStlrb,
|
|
|
kIdStlrh,
|
|
|
kIdStlxp,
|
|
|
kIdStlxr,
|
|
|
kIdStlxrb,
|
|
|
kIdStlxrh,
|
|
|
kIdStnp,
|
|
|
kIdStp,
|
|
|
kIdStr,
|
|
|
kIdStrb,
|
|
|
kIdStrh,
|
|
|
kIdStset,
|
|
|
kIdStsetl,
|
|
|
kIdStsetb,
|
|
|
kIdStsetlb,
|
|
|
kIdStseth,
|
|
|
kIdStsetlh,
|
|
|
kIdStsmax,
|
|
|
kIdStsmaxl,
|
|
|
kIdStsmaxb,
|
|
|
kIdStsmaxlb,
|
|
|
kIdStsmaxh,
|
|
|
kIdStsmaxlh,
|
|
|
kIdStsmin,
|
|
|
kIdStsminl,
|
|
|
kIdStsminb,
|
|
|
kIdStsminlb,
|
|
|
kIdStsminh,
|
|
|
kIdStsminlh,
|
|
|
kIdSttr,
|
|
|
kIdSttrb,
|
|
|
kIdSttrh,
|
|
|
kIdStumax,
|
|
|
kIdStumaxl,
|
|
|
kIdStumaxb,
|
|
|
kIdStumaxlb,
|
|
|
kIdStumaxh,
|
|
|
kIdStumaxlh,
|
|
|
kIdStumin,
|
|
|
kIdStuminl,
|
|
|
kIdStuminb,
|
|
|
kIdStuminlb,
|
|
|
kIdStuminh,
|
|
|
kIdStuminlh,
|
|
|
kIdStur,
|
|
|
kIdSturb,
|
|
|
kIdSturh,
|
|
|
kIdStxp,
|
|
|
kIdStxr,
|
|
|
kIdStxrb,
|
|
|
kIdStxrh,
|
|
|
kIdStz2g,
|
|
|
kIdStzg,
|
|
|
kIdStzgm,
|
|
|
kIdSub,
|
|
|
kIdSubg,
|
|
|
kIdSubp,
|
|
|
kIdSubps,
|
|
|
kIdSubs,
|
|
|
kIdSvc,
|
|
|
kIdSwp,
|
|
|
kIdSwpa,
|
|
|
kIdSwpab,
|
|
|
kIdSwpah,
|
|
|
kIdSwpal,
|
|
|
kIdSwpalb,
|
|
|
kIdSwpalh,
|
|
|
kIdSwpb,
|
|
|
kIdSwph,
|
|
|
kIdSwpl,
|
|
|
kIdSwplb,
|
|
|
kIdSwplh,
|
|
|
kIdSxtb,
|
|
|
kIdSxth,
|
|
|
kIdSxtw,
|
|
|
kIdSys,
|
|
|
kIdTlbi,
|
|
|
kIdTst,
|
|
|
kIdTbnz,
|
|
|
kIdTbz,
|
|
|
kIdUbfiz,
|
|
|
kIdUbfm,
|
|
|
kIdUbfx,
|
|
|
kIdUdf,
|
|
|
kIdUdiv,
|
|
|
kIdUmaddl,
|
|
|
kIdUmnegl,
|
|
|
kIdUmull,
|
|
|
kIdUmulh,
|
|
|
kIdUmsubl,
|
|
|
kIdUxtb,
|
|
|
kIdUxth,
|
|
|
kIdWfe,
|
|
|
kIdWfi,
|
|
|
kIdXaflag,
|
|
|
kIdXpacd,
|
|
|
kIdXpaci,
|
|
|
kIdXpaclri,
|
|
|
kIdYield,
|
|
|
kIdAbs_v,
|
|
|
kIdAdd_v,
|
|
|
kIdAddhn_v,
|
|
|
kIdAddhn2_v,
|
|
|
kIdAddp_v,
|
|
|
kIdAddv_v,
|
|
|
kIdAesd_v,
|
|
|
kIdAese_v,
|
|
|
kIdAesimc_v,
|
|
|
kIdAesmc_v,
|
|
|
kIdAnd_v,
|
|
|
kIdBcax_v,
|
|
|
kIdBfcvt_v,
|
|
|
kIdBfcvtn_v,
|
|
|
kIdBfcvtn2_v,
|
|
|
kIdBfdot_v,
|
|
|
kIdBfmlalb_v,
|
|
|
kIdBfmlalt_v,
|
|
|
kIdBfmmla_v,
|
|
|
kIdBic_v,
|
|
|
kIdBif_v,
|
|
|
kIdBit_v,
|
|
|
kIdBsl_v,
|
|
|
kIdCls_v,
|
|
|
kIdClz_v,
|
|
|
kIdCmeq_v,
|
|
|
kIdCmge_v,
|
|
|
kIdCmgt_v,
|
|
|
kIdCmhi_v,
|
|
|
kIdCmhs_v,
|
|
|
kIdCmle_v,
|
|
|
kIdCmlt_v,
|
|
|
kIdCmtst_v,
|
|
|
kIdCnt_v,
|
|
|
kIdDup_v,
|
|
|
kIdEor_v,
|
|
|
kIdEor3_v,
|
|
|
kIdExt_v,
|
|
|
kIdFabd_v,
|
|
|
kIdFabs_v,
|
|
|
kIdFacge_v,
|
|
|
kIdFacgt_v,
|
|
|
kIdFadd_v,
|
|
|
kIdFaddp_v,
|
|
|
kIdFcadd_v,
|
|
|
kIdFccmp_v,
|
|
|
kIdFccmpe_v,
|
|
|
kIdFcmeq_v,
|
|
|
kIdFcmge_v,
|
|
|
kIdFcmgt_v,
|
|
|
kIdFcmla_v,
|
|
|
kIdFcmle_v,
|
|
|
kIdFcmlt_v,
|
|
|
kIdFcmp_v,
|
|
|
kIdFcmpe_v,
|
|
|
kIdFcsel_v,
|
|
|
kIdFcvt_v,
|
|
|
kIdFcvtas_v,
|
|
|
kIdFcvtau_v,
|
|
|
kIdFcvtl_v,
|
|
|
kIdFcvtl2_v,
|
|
|
kIdFcvtms_v,
|
|
|
kIdFcvtmu_v,
|
|
|
kIdFcvtn_v,
|
|
|
kIdFcvtn2_v,
|
|
|
kIdFcvtns_v,
|
|
|
kIdFcvtnu_v,
|
|
|
kIdFcvtps_v,
|
|
|
kIdFcvtpu_v,
|
|
|
kIdFcvtxn_v,
|
|
|
kIdFcvtxn2_v,
|
|
|
kIdFcvtzs_v,
|
|
|
kIdFcvtzu_v,
|
|
|
kIdFdiv_v,
|
|
|
kIdFjcvtzs_v,
|
|
|
kIdFmadd_v,
|
|
|
kIdFmax_v,
|
|
|
kIdFmaxnm_v,
|
|
|
kIdFmaxnmp_v,
|
|
|
kIdFmaxnmv_v,
|
|
|
kIdFmaxp_v,
|
|
|
kIdFmaxv_v,
|
|
|
kIdFmin_v,
|
|
|
kIdFminnm_v,
|
|
|
kIdFminnmp_v,
|
|
|
kIdFminnmv_v,
|
|
|
kIdFminp_v,
|
|
|
kIdFminv_v,
|
|
|
kIdFmla_v,
|
|
|
kIdFmlal_v,
|
|
|
kIdFmlal2_v,
|
|
|
kIdFmls_v,
|
|
|
kIdFmlsl_v,
|
|
|
kIdFmlsl2_v,
|
|
|
kIdFmov_v,
|
|
|
kIdFmsub_v,
|
|
|
kIdFmul_v,
|
|
|
kIdFmulx_v,
|
|
|
kIdFneg_v,
|
|
|
kIdFnmadd_v,
|
|
|
kIdFnmsub_v,
|
|
|
kIdFnmul_v,
|
|
|
kIdFrecpe_v,
|
|
|
kIdFrecps_v,
|
|
|
kIdFrecpx_v,
|
|
|
kIdFrint32x_v,
|
|
|
kIdFrint32z_v,
|
|
|
kIdFrint64x_v,
|
|
|
kIdFrint64z_v,
|
|
|
kIdFrinta_v,
|
|
|
kIdFrinti_v,
|
|
|
kIdFrintm_v,
|
|
|
kIdFrintn_v,
|
|
|
kIdFrintp_v,
|
|
|
kIdFrintx_v,
|
|
|
kIdFrintz_v,
|
|
|
kIdFrsqrte_v,
|
|
|
kIdFrsqrts_v,
|
|
|
kIdFsqrt_v,
|
|
|
kIdFsub_v,
|
|
|
kIdIns_v,
|
|
|
kIdLd1_v,
|
|
|
kIdLd1r_v,
|
|
|
kIdLd2_v,
|
|
|
kIdLd2r_v,
|
|
|
kIdLd3_v,
|
|
|
kIdLd3r_v,
|
|
|
kIdLd4_v,
|
|
|
kIdLd4r_v,
|
|
|
kIdLdnp_v,
|
|
|
kIdLdp_v,
|
|
|
kIdLdr_v,
|
|
|
kIdLdur_v,
|
|
|
kIdMla_v,
|
|
|
kIdMls_v,
|
|
|
kIdMov_v,
|
|
|
kIdMovi_v,
|
|
|
kIdMul_v,
|
|
|
kIdMvn_v,
|
|
|
kIdMvni_v,
|
|
|
kIdNeg_v,
|
|
|
kIdNot_v,
|
|
|
kIdOrn_v,
|
|
|
kIdOrr_v,
|
|
|
kIdPmul_v,
|
|
|
kIdPmull_v,
|
|
|
kIdPmull2_v,
|
|
|
kIdRaddhn_v,
|
|
|
kIdRaddhn2_v,
|
|
|
kIdRax1_v,
|
|
|
kIdRbit_v,
|
|
|
kIdRev16_v,
|
|
|
kIdRev32_v,
|
|
|
kIdRev64_v,
|
|
|
kIdRshrn_v,
|
|
|
kIdRshrn2_v,
|
|
|
kIdRsubhn_v,
|
|
|
kIdRsubhn2_v,
|
|
|
kIdSaba_v,
|
|
|
kIdSabal_v,
|
|
|
kIdSabal2_v,
|
|
|
kIdSabd_v,
|
|
|
kIdSabdl_v,
|
|
|
kIdSabdl2_v,
|
|
|
kIdSadalp_v,
|
|
|
kIdSaddl_v,
|
|
|
kIdSaddl2_v,
|
|
|
kIdSaddlp_v,
|
|
|
kIdSaddlv_v,
|
|
|
kIdSaddw_v,
|
|
|
kIdSaddw2_v,
|
|
|
kIdScvtf_v,
|
|
|
kIdSdot_v,
|
|
|
kIdSha1c_v,
|
|
|
kIdSha1h_v,
|
|
|
kIdSha1m_v,
|
|
|
kIdSha1p_v,
|
|
|
kIdSha1su0_v,
|
|
|
kIdSha1su1_v,
|
|
|
kIdSha256h_v,
|
|
|
kIdSha256h2_v,
|
|
|
kIdSha256su0_v,
|
|
|
kIdSha256su1_v,
|
|
|
kIdSha512h_v,
|
|
|
kIdSha512h2_v,
|
|
|
kIdSha512su0_v,
|
|
|
kIdSha512su1_v,
|
|
|
kIdShadd_v,
|
|
|
kIdShl_v,
|
|
|
kIdShll_v,
|
|
|
kIdShll2_v,
|
|
|
kIdShrn_v,
|
|
|
kIdShrn2_v,
|
|
|
kIdShsub_v,
|
|
|
kIdSli_v,
|
|
|
kIdSm3partw1_v,
|
|
|
kIdSm3partw2_v,
|
|
|
kIdSm3ss1_v,
|
|
|
kIdSm3tt1a_v,
|
|
|
kIdSm3tt1b_v,
|
|
|
kIdSm3tt2a_v,
|
|
|
kIdSm3tt2b_v,
|
|
|
kIdSm4e_v,
|
|
|
kIdSm4ekey_v,
|
|
|
kIdSmax_v,
|
|
|
kIdSmaxp_v,
|
|
|
kIdSmaxv_v,
|
|
|
kIdSmin_v,
|
|
|
kIdSminp_v,
|
|
|
kIdSminv_v,
|
|
|
kIdSmlal_v,
|
|
|
kIdSmlal2_v,
|
|
|
kIdSmlsl_v,
|
|
|
kIdSmlsl2_v,
|
|
|
kIdSmmla_v,
|
|
|
kIdSmov_v,
|
|
|
kIdSmull_v,
|
|
|
kIdSmull2_v,
|
|
|
kIdSqabs_v,
|
|
|
kIdSqadd_v,
|
|
|
kIdSqdmlal_v,
|
|
|
kIdSqdmlal2_v,
|
|
|
kIdSqdmlsl_v,
|
|
|
kIdSqdmlsl2_v,
|
|
|
kIdSqdmulh_v,
|
|
|
kIdSqdmull_v,
|
|
|
kIdSqdmull2_v,
|
|
|
kIdSqneg_v,
|
|
|
kIdSqrdmlah_v,
|
|
|
kIdSqrdmlsh_v,
|
|
|
kIdSqrdmulh_v,
|
|
|
kIdSqrshl_v,
|
|
|
kIdSqrshrn_v,
|
|
|
kIdSqrshrn2_v,
|
|
|
kIdSqrshrun_v,
|
|
|
kIdSqrshrun2_v,
|
|
|
kIdSqshl_v,
|
|
|
kIdSqshlu_v,
|
|
|
kIdSqshrn_v,
|
|
|
kIdSqshrn2_v,
|
|
|
kIdSqshrun_v,
|
|
|
kIdSqshrun2_v,
|
|
|
kIdSqsub_v,
|
|
|
kIdSqxtn_v,
|
|
|
kIdSqxtn2_v,
|
|
|
kIdSqxtun_v,
|
|
|
kIdSqxtun2_v,
|
|
|
kIdSrhadd_v,
|
|
|
kIdSri_v,
|
|
|
kIdSrshl_v,
|
|
|
kIdSrshr_v,
|
|
|
kIdSrsra_v,
|
|
|
kIdSshl_v,
|
|
|
kIdSshll_v,
|
|
|
kIdSshll2_v,
|
|
|
kIdSshr_v,
|
|
|
kIdSsra_v,
|
|
|
kIdSsubl_v,
|
|
|
kIdSsubl2_v,
|
|
|
kIdSsubw_v,
|
|
|
kIdSsubw2_v,
|
|
|
kIdSt1_v,
|
|
|
kIdSt2_v,
|
|
|
kIdSt3_v,
|
|
|
kIdSt4_v,
|
|
|
kIdStnp_v,
|
|
|
kIdStp_v,
|
|
|
kIdStr_v,
|
|
|
kIdStur_v,
|
|
|
kIdSub_v,
|
|
|
kIdSubhn_v,
|
|
|
kIdSubhn2_v,
|
|
|
kIdSudot_v,
|
|
|
kIdSuqadd_v,
|
|
|
kIdSxtl_v,
|
|
|
kIdSxtl2_v,
|
|
|
kIdTbl_v,
|
|
|
kIdTbx_v,
|
|
|
kIdTrn1_v,
|
|
|
kIdTrn2_v,
|
|
|
kIdUaba_v,
|
|
|
kIdUabal_v,
|
|
|
kIdUabal2_v,
|
|
|
kIdUabd_v,
|
|
|
kIdUabdl_v,
|
|
|
kIdUabdl2_v,
|
|
|
kIdUadalp_v,
|
|
|
kIdUaddl_v,
|
|
|
kIdUaddl2_v,
|
|
|
kIdUaddlp_v,
|
|
|
kIdUaddlv_v,
|
|
|
kIdUaddw_v,
|
|
|
kIdUaddw2_v,
|
|
|
kIdUcvtf_v,
|
|
|
kIdUdot_v,
|
|
|
kIdUhadd_v,
|
|
|
kIdUhsub_v,
|
|
|
kIdUmax_v,
|
|
|
kIdUmaxp_v,
|
|
|
kIdUmaxv_v,
|
|
|
kIdUmin_v,
|
|
|
kIdUminp_v,
|
|
|
kIdUminv_v,
|
|
|
kIdUmlal_v,
|
|
|
kIdUmlal2_v,
|
|
|
kIdUmlsl_v,
|
|
|
kIdUmlsl2_v,
|
|
|
kIdUmmla_v,
|
|
|
kIdUmov_v,
|
|
|
kIdUmull_v,
|
|
|
kIdUmull2_v,
|
|
|
kIdUqadd_v,
|
|
|
kIdUqrshl_v,
|
|
|
kIdUqrshrn_v,
|
|
|
kIdUqrshrn2_v,
|
|
|
kIdUqshl_v,
|
|
|
kIdUqshrn_v,
|
|
|
kIdUqshrn2_v,
|
|
|
kIdUqsub_v,
|
|
|
kIdUqxtn_v,
|
|
|
kIdUqxtn2_v,
|
|
|
kIdUrecpe_v,
|
|
|
kIdUrhadd_v,
|
|
|
kIdUrshl_v,
|
|
|
kIdUrshr_v,
|
|
|
kIdUrsqrte_v,
|
|
|
kIdUrsra_v,
|
|
|
kIdUsdot_v,
|
|
|
kIdUshl_v,
|
|
|
kIdUshll_v,
|
|
|
kIdUshll2_v,
|
|
|
kIdUshr_v,
|
|
|
kIdUsmmla_v,
|
|
|
kIdUsqadd_v,
|
|
|
kIdUsra_v,
|
|
|
kIdUsubl_v,
|
|
|
kIdUsubl2_v,
|
|
|
kIdUsubw_v,
|
|
|
kIdUsubw2_v,
|
|
|
kIdUxtl_v,
|
|
|
kIdUxtl2_v,
|
|
|
kIdUzp1_v,
|
|
|
kIdUzp2_v,
|
|
|
kIdXar_v,
|
|
|
kIdXtn_v,
|
|
|
kIdXtn2_v,
|
|
|
kIdZip1_v,
|
|
|
kIdZip2_v,
|
|
|
_kIdCount
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
static ASMJIT_INLINE_NODEBUG bool isDefinedId(InstId instId) noexcept { return (instId & uint32_t(InstIdParts::kRealId)) < _kIdCount; }
|
|
|
};
|
|
|
|
|
|
namespace Predicate {
|
|
|
|
|
|
|
|
|
namespace AT {
|
|
|
static ASMJIT_INLINE_NODEBUG constexpr uint32_t encode(uint32_t op1, uint32_t cRn, uint32_t cRm, uint32_t op2) noexcept {
|
|
|
return (op1 << 11) | (cRn << 7) | (cRm << 3) | (op2 << 0);
|
|
|
}
|
|
|
|
|
|
enum Value : uint32_t {
|
|
|
kS1E1R = encode(0b000, 0b0111, 0b1000, 0b000),
|
|
|
kS1E2R = encode(0b100, 0b0111, 0b1000, 0b000),
|
|
|
kS1E3R = encode(0b110, 0b0111, 0b1000, 0b000),
|
|
|
kS1E1W = encode(0b000, 0b0111, 0b1000, 0b001),
|
|
|
kS1E2W = encode(0b100, 0b0111, 0b1000, 0b001),
|
|
|
kS1E3W = encode(0b110, 0b0111, 0b1000, 0b001),
|
|
|
kS1E0R = encode(0b000, 0b0111, 0b1000, 0b010),
|
|
|
kS1E0W = encode(0b000, 0b0111, 0b1000, 0b011),
|
|
|
kS12E1R = encode(0b100, 0b0111, 0b1000, 0b100),
|
|
|
kS12E1W = encode(0b100, 0b0111, 0b1000, 0b101),
|
|
|
kS12E0R = encode(0b100, 0b0111, 0b1000, 0b110),
|
|
|
kS12E0W = encode(0b100, 0b0111, 0b1000, 0b111),
|
|
|
kS1E1RP = encode(0b000, 0b0111, 0b1001, 0b000),
|
|
|
kS1E1WP = encode(0b000, 0b0111, 0b1001, 0b001)
|
|
|
};
|
|
|
}
|
|
|
|
|
|
|
|
|
namespace DB {
|
|
|
|
|
|
enum Value : uint32_t {
|
|
|
|
|
|
kOSHLD = 0x01u,
|
|
|
|
|
|
kOSHST = 0x02u,
|
|
|
|
|
|
kOSH = 0x03u,
|
|
|
|
|
|
|
|
|
kNSHLD = 0x05u,
|
|
|
|
|
|
kNSHST = 0x06u,
|
|
|
|
|
|
kNSH = 0x07u,
|
|
|
|
|
|
|
|
|
kISHLD = 0x09u,
|
|
|
|
|
|
kISHST = 0x0Au,
|
|
|
|
|
|
kISH = 0x0Bu,
|
|
|
|
|
|
|
|
|
kLD = 0x0Du,
|
|
|
|
|
|
kST = 0x0Eu,
|
|
|
|
|
|
kSY = 0x0Fu
|
|
|
};
|
|
|
}
|
|
|
|
|
|
|
|
|
namespace DC {
|
|
|
static ASMJIT_INLINE_NODEBUG constexpr uint32_t encode(uint32_t op1, uint32_t cRn, uint32_t cRm, uint32_t op2) noexcept {
|
|
|
return (op1 << 11) | (cRn << 7) | (cRm << 3) | (op2 << 0);
|
|
|
}
|
|
|
|
|
|
|
|
|
enum Value : uint32_t {
|
|
|
kZVA = encode(0b011, 0b0111, 0b0100, 0b001),
|
|
|
kIVAC = encode(0b000, 0b0111, 0b0110, 0b001),
|
|
|
kISW = encode(0b000, 0b0111, 0b0110, 0b010),
|
|
|
kCVAC = encode(0b011, 0b0111, 0b1010, 0b001),
|
|
|
kCSW = encode(0b000, 0b0111, 0b1010, 0b010),
|
|
|
kCVAU = encode(0b011, 0b0111, 0b1011, 0b001),
|
|
|
kCIVAC = encode(0b011, 0b0111, 0b1110, 0b001),
|
|
|
kCISW = encode(0b000, 0b0111, 0b1110, 0b010),
|
|
|
kCVAP = encode(0b011, 0b0111, 0b1100, 0b001),
|
|
|
kCVADP = encode(0b011, 0b0111, 0b1101, 0b001),
|
|
|
kIGVAC = encode(0b000, 0b0111, 0b0110, 0b011),
|
|
|
kIGSW = encode(0b000, 0b0111, 0b0110, 0b100),
|
|
|
kCGSW = encode(0b000, 0b0111, 0b1010, 0b100),
|
|
|
kCIGSW = encode(0b000, 0b0111, 0b1110, 0b100),
|
|
|
kCGVAC = encode(0b011, 0b0111, 0b1010, 0b011),
|
|
|
kCGVAP = encode(0b011, 0b0111, 0b1100, 0b011),
|
|
|
kCGVADP = encode(0b011, 0b0111, 0b1101, 0b011),
|
|
|
kCIGVAC = encode(0b011, 0b0111, 0b1110, 0b011),
|
|
|
kGVA = encode(0b011, 0b0111, 0b0100, 0b011),
|
|
|
kIGDVAC = encode(0b000, 0b0111, 0b0110, 0b101),
|
|
|
kIGDSW = encode(0b000, 0b0111, 0b0110, 0b110),
|
|
|
kCGDSW = encode(0b000, 0b0111, 0b1010, 0b110),
|
|
|
kCIGDSW = encode(0b000, 0b0111, 0b1110, 0b110),
|
|
|
kCGDVAC = encode(0b011, 0b0111, 0b1010, 0b101),
|
|
|
kCGDVAP = encode(0b011, 0b0111, 0b1100, 0b101),
|
|
|
kCGDVADP = encode(0b011, 0b0111, 0b1101, 0b101),
|
|
|
kCIGDVAC = encode(0b011, 0b0111, 0b1110, 0b101),
|
|
|
kGZVA = encode(0b011, 0b0111, 0b0100, 0b100)
|
|
|
};
|
|
|
}
|
|
|
|
|
|
|
|
|
namespace IC {
|
|
|
static ASMJIT_INLINE_NODEBUG constexpr uint32_t encode(uint32_t op1, uint32_t cRn, uint32_t cRm, uint32_t op2) noexcept {
|
|
|
return (op1 << 11) | (cRn << 7) | (cRm << 3) | (op2 << 0);
|
|
|
}
|
|
|
|
|
|
|
|
|
enum Value : uint32_t {
|
|
|
kIALLUIS = encode(0b000, 0b0111, 0b0001, 0b000),
|
|
|
kIALLU = encode(0b000, 0b0111, 0b0101, 0b000),
|
|
|
kIVAU = encode(0b011, 0b0111, 0b0101, 0b001)
|
|
|
};
|
|
|
}
|
|
|
|
|
|
|
|
|
namespace ISB {
|
|
|
|
|
|
enum Value : uint32_t {
|
|
|
kSY = 0xF
|
|
|
};
|
|
|
}
|
|
|
|
|
|
|
|
|
namespace PRFOp {
|
|
|
|
|
|
enum Value : uint32_t {
|
|
|
kPLDL1KEEP = 0x00,
|
|
|
kPLDL1STRM = 0x01,
|
|
|
kPLDL2KEEP = 0x02,
|
|
|
kPLDL2STRM = 0x03,
|
|
|
kPLDL3KEEP = 0x04,
|
|
|
kPLDL3STRM = 0x05,
|
|
|
kPLIL1KEEP = 0x08,
|
|
|
kPLIL1STRM = 0x09,
|
|
|
kPLIL2KEEP = 0x0A,
|
|
|
kPLIL2STRM = 0x0B,
|
|
|
kPLIL3KEEP = 0x0C,
|
|
|
kPLIL3STRM = 0x0D,
|
|
|
kPSTL1KEEP = 0x10,
|
|
|
kPSTL1STRM = 0x11,
|
|
|
kPSTL2KEEP = 0x12,
|
|
|
kPSTL2STRM = 0x13,
|
|
|
kPSTL3KEEP = 0x14,
|
|
|
kPSTL3STRM = 0x15
|
|
|
};
|
|
|
}
|
|
|
|
|
|
|
|
|
namespace PSB {
|
|
|
|
|
|
enum Value : uint32_t {
|
|
|
kCSYNC = 0x11u
|
|
|
};
|
|
|
}
|
|
|
|
|
|
namespace TLBI {
|
|
|
static ASMJIT_INLINE_NODEBUG constexpr uint32_t encode(uint32_t op1, uint32_t cRn, uint32_t cRm, uint32_t op2) noexcept {
|
|
|
return (op1 << 11) | (cRn << 7) | (cRm << 3) | (op2 << 0);
|
|
|
}
|
|
|
|
|
|
enum Value : uint32_t {
|
|
|
kIPAS2E1IS = encode(0b100, 0b1000, 0b0000, 0b001),
|
|
|
kIPAS2LE1IS = encode(0b100, 0b1000, 0b0000, 0b101),
|
|
|
kVMALLE1IS = encode(0b000, 0b1000, 0b0011, 0b000),
|
|
|
kALLE2IS = encode(0b100, 0b1000, 0b0011, 0b000),
|
|
|
kALLE3IS = encode(0b110, 0b1000, 0b0011, 0b000),
|
|
|
kVAE1IS = encode(0b000, 0b1000, 0b0011, 0b001),
|
|
|
kVAE2IS = encode(0b100, 0b1000, 0b0011, 0b001),
|
|
|
kVAE3IS = encode(0b110, 0b1000, 0b0011, 0b001),
|
|
|
kASIDE1IS = encode(0b000, 0b1000, 0b0011, 0b010),
|
|
|
kVAAE1IS = encode(0b000, 0b1000, 0b0011, 0b011),
|
|
|
kALLE1IS = encode(0b100, 0b1000, 0b0011, 0b100),
|
|
|
kVALE1IS = encode(0b000, 0b1000, 0b0011, 0b101),
|
|
|
kVALE2IS = encode(0b100, 0b1000, 0b0011, 0b101),
|
|
|
kVALE3IS = encode(0b110, 0b1000, 0b0011, 0b101),
|
|
|
kVMALLS12E1IS = encode(0b100, 0b1000, 0b0011, 0b110),
|
|
|
kVAALE1IS = encode(0b000, 0b1000, 0b0011, 0b111),
|
|
|
kIPAS2E1 = encode(0b100, 0b1000, 0b0100, 0b001),
|
|
|
kIPAS2LE1 = encode(0b100, 0b1000, 0b0100, 0b101),
|
|
|
kVMALLE1 = encode(0b000, 0b1000, 0b0111, 0b000),
|
|
|
kALLE2 = encode(0b100, 0b1000, 0b0111, 0b000),
|
|
|
kALLE3 = encode(0b110, 0b1000, 0b0111, 0b000),
|
|
|
kVAE1 = encode(0b000, 0b1000, 0b0111, 0b001),
|
|
|
kVAE2 = encode(0b100, 0b1000, 0b0111, 0b001),
|
|
|
kVAE3 = encode(0b110, 0b1000, 0b0111, 0b001),
|
|
|
kASIDE1 = encode(0b000, 0b1000, 0b0111, 0b010),
|
|
|
kVAAE1 = encode(0b000, 0b1000, 0b0111, 0b011),
|
|
|
kALLE1 = encode(0b100, 0b1000, 0b0111, 0b100),
|
|
|
kVALE1 = encode(0b000, 0b1000, 0b0111, 0b101),
|
|
|
kVALE2 = encode(0b100, 0b1000, 0b0111, 0b101),
|
|
|
kVALE3 = encode(0b110, 0b1000, 0b0111, 0b101),
|
|
|
kVMALLS12E1 = encode(0b100, 0b1000, 0b0111, 0b110),
|
|
|
kVAALE1 = encode(0b000, 0b1000, 0b0111, 0b111),
|
|
|
|
|
|
kVMALLE1OS = encode(0b000, 0b1000, 0b0001, 0b000),
|
|
|
kVAE1OS = encode(0b000, 0b1000, 0b0001, 0b001),
|
|
|
kASIDE1OS = encode(0b000, 0b1000, 0b0001, 0b010),
|
|
|
kVAAE1OS = encode(0b000, 0b1000, 0b0001, 0b011),
|
|
|
kVALE1OS = encode(0b000, 0b1000, 0b0001, 0b101),
|
|
|
kVAALE1OS = encode(0b000, 0b1000, 0b0001, 0b111),
|
|
|
kIPAS2E1OS = encode(0b100, 0b1000, 0b0100, 0b000),
|
|
|
kIPAS2LE1OS = encode(0b100, 0b1000, 0b0100, 0b100),
|
|
|
kVAE2OS = encode(0b100, 0b1000, 0b0001, 0b001),
|
|
|
kVALE2OS = encode(0b100, 0b1000, 0b0001, 0b101),
|
|
|
kVMALLS12E1OS = encode(0b100, 0b1000, 0b0001, 0b110),
|
|
|
kVAE3OS = encode(0b110, 0b1000, 0b0001, 0b001),
|
|
|
kVALE3OS = encode(0b110, 0b1000, 0b0001, 0b101),
|
|
|
kALLE2OS = encode(0b100, 0b1000, 0b0001, 0b000),
|
|
|
kALLE1OS = encode(0b100, 0b1000, 0b0001, 0b100),
|
|
|
kALLE3OS = encode(0b110, 0b1000, 0b0001, 0b000),
|
|
|
|
|
|
kRVAE1 = encode(0b000, 0b1000, 0b0110, 0b001),
|
|
|
kRVAAE1 = encode(0b000, 0b1000, 0b0110, 0b011),
|
|
|
kRVALE1 = encode(0b000, 0b1000, 0b0110, 0b101),
|
|
|
kRVAALE1 = encode(0b000, 0b1000, 0b0110, 0b111),
|
|
|
kRVAE1IS = encode(0b000, 0b1000, 0b0010, 0b001),
|
|
|
kRVAAE1IS = encode(0b000, 0b1000, 0b0010, 0b011),
|
|
|
kRVALE1IS = encode(0b000, 0b1000, 0b0010, 0b101),
|
|
|
kRVAALE1IS = encode(0b000, 0b1000, 0b0010, 0b111),
|
|
|
kRVAE1OS = encode(0b000, 0b1000, 0b0101, 0b001),
|
|
|
kRVAAE1OS = encode(0b000, 0b1000, 0b0101, 0b011),
|
|
|
kRVALE1OS = encode(0b000, 0b1000, 0b0101, 0b101),
|
|
|
kRVAALE1OS = encode(0b000, 0b1000, 0b0101, 0b111),
|
|
|
kRIPAS2E1IS = encode(0b100, 0b1000, 0b0000, 0b010),
|
|
|
kRIPAS2LE1IS = encode(0b100, 0b1000, 0b0000, 0b110),
|
|
|
kRIPAS2E1 = encode(0b100, 0b1000, 0b0100, 0b010),
|
|
|
kRIPAS2LE1 = encode(0b100, 0b1000, 0b0100, 0b110),
|
|
|
kRIPAS2E1OS = encode(0b100, 0b1000, 0b0100, 0b011),
|
|
|
kRIPAS2LE1OS = encode(0b100, 0b1000, 0b0100, 0b111),
|
|
|
kRVAE2 = encode(0b100, 0b1000, 0b0110, 0b001),
|
|
|
kRVALE2 = encode(0b100, 0b1000, 0b0110, 0b101),
|
|
|
kRVAE2IS = encode(0b100, 0b1000, 0b0010, 0b001),
|
|
|
kRVALE2IS = encode(0b100, 0b1000, 0b0010, 0b101),
|
|
|
kRVAE2OS = encode(0b100, 0b1000, 0b0101, 0b001),
|
|
|
kRVALE2OS = encode(0b100, 0b1000, 0b0101, 0b101),
|
|
|
kRVAE3 = encode(0b110, 0b1000, 0b0110, 0b001),
|
|
|
kRVALE3 = encode(0b110, 0b1000, 0b0110, 0b101),
|
|
|
kRVAE3IS = encode(0b110, 0b1000, 0b0010, 0b001),
|
|
|
kRVALE3IS = encode(0b110, 0b1000, 0b0010, 0b101),
|
|
|
kRVAE3OS = encode(0b110, 0b1000, 0b0101, 0b001),
|
|
|
kRVALE3OS = encode(0b110, 0b1000, 0b0101, 0b101),
|
|
|
};
|
|
|
}
|
|
|
|
|
|
|
|
|
namespace TSB {
|
|
|
|
|
|
enum Value : uint32_t {
|
|
|
kCSYNC = 0
|
|
|
};
|
|
|
}
|
|
|
|
|
|
|
|
|
namespace PState {
|
|
|
|
|
|
static ASMJIT_INLINE_NODEBUG constexpr uint32_t encode(uint32_t op0, uint32_t op1) noexcept {
|
|
|
return (op0 << 3) | (op1 << 0);
|
|
|
}
|
|
|
|
|
|
|
|
|
enum Value : uint32_t {
|
|
|
kSPSel = encode(0b000, 0b101),
|
|
|
kDAIFSet = encode(0b011, 0b110),
|
|
|
kDAIFClr = encode(0b011, 0b111),
|
|
|
kPAN = encode(0b000, 0b100),
|
|
|
kUAO = encode(0b000, 0b011),
|
|
|
kDIT = encode(0b011, 0b010),
|
|
|
kSSBS = encode(0b011, 0b001),
|
|
|
kTCO = encode(0b011, 0b100)
|
|
|
};
|
|
|
};
|
|
|
|
|
|
|
|
|
namespace SysReg {
|
|
|
|
|
|
struct Fields {
|
|
|
uint8_t op0;
|
|
|
uint8_t op1;
|
|
|
uint8_t cRn;
|
|
|
uint8_t cRm;
|
|
|
uint8_t op2;
|
|
|
};
|
|
|
|
|
|
|
|
|
static ASMJIT_INLINE_NODEBUG constexpr uint32_t encode(uint32_t op0, uint32_t op1, uint32_t cRn, uint32_t cRm, uint32_t op2) noexcept {
|
|
|
return (op0 << 14) | (op1 << 11) | (cRn << 7) | (cRm << 3) | (op2 << 0);
|
|
|
}
|
|
|
|
|
|
|
|
|
static ASMJIT_INLINE_NODEBUG constexpr uint32_t encode(const Fields& fields) noexcept {
|
|
|
return encode(fields.op0, fields.op1, fields.cRn, fields.cRm, fields.op2);
|
|
|
}
|
|
|
|
|
|
|
|
|
static ASMJIT_INLINE_NODEBUG constexpr Fields decode(uint32_t id) noexcept {
|
|
|
return Fields {
|
|
|
uint8_t((id >> 14) & 0x3u),
|
|
|
uint8_t((id >> 11) & 0x7u),
|
|
|
uint8_t((id >> 7) & 0xFu),
|
|
|
uint8_t((id >> 3) & 0xFu),
|
|
|
uint8_t((id >> 0) & 0x7u)
|
|
|
};
|
|
|
}
|
|
|
|
|
|
|
|
|
enum Id : uint32_t {
|
|
|
kACTLR_EL1 = encode(0b11, 0b000, 0b0001, 0b0000, 0b001),
|
|
|
kACTLR_EL2 = encode(0b11, 0b100, 0b0001, 0b0000, 0b001),
|
|
|
kACTLR_EL3 = encode(0b11, 0b110, 0b0001, 0b0000, 0b001),
|
|
|
kAFSR0_EL1 = encode(0b11, 0b000, 0b0101, 0b0001, 0b000),
|
|
|
kAFSR0_EL12 = encode(0b11, 0b101, 0b0101, 0b0001, 0b000),
|
|
|
kAFSR0_EL2 = encode(0b11, 0b100, 0b0101, 0b0001, 0b000),
|
|
|
kAFSR0_EL3 = encode(0b11, 0b110, 0b0101, 0b0001, 0b000),
|
|
|
kAFSR1_EL1 = encode(0b11, 0b000, 0b0101, 0b0001, 0b001),
|
|
|
kAFSR1_EL12 = encode(0b11, 0b101, 0b0101, 0b0001, 0b001),
|
|
|
kAFSR1_EL2 = encode(0b11, 0b100, 0b0101, 0b0001, 0b001),
|
|
|
kAFSR1_EL3 = encode(0b11, 0b110, 0b0101, 0b0001, 0b001),
|
|
|
kAIDR_EL1 = encode(0b11, 0b001, 0b0000, 0b0000, 0b111),
|
|
|
kAMAIR_EL1 = encode(0b11, 0b000, 0b1010, 0b0011, 0b000),
|
|
|
kAMAIR_EL12 = encode(0b11, 0b101, 0b1010, 0b0011, 0b000),
|
|
|
kAMAIR_EL2 = encode(0b11, 0b100, 0b1010, 0b0011, 0b000),
|
|
|
kAMAIR_EL3 = encode(0b11, 0b110, 0b1010, 0b0011, 0b000),
|
|
|
kAMCFGR_EL0 = encode(0b11, 0b011, 0b1101, 0b0010, 0b001),
|
|
|
kAMCGCR_EL0 = encode(0b11, 0b011, 0b1101, 0b0010, 0b010),
|
|
|
kAMCNTENCLR0_EL0 = encode(0b11, 0b011, 0b1101, 0b0010, 0b100),
|
|
|
kAMCNTENCLR1_EL0 = encode(0b11, 0b011, 0b1101, 0b0011, 0b000),
|
|
|
kAMCNTENSET0_EL0 = encode(0b11, 0b011, 0b1101, 0b0010, 0b101),
|
|
|
kAMCNTENSET1_EL0 = encode(0b11, 0b011, 0b1101, 0b0011, 0b001),
|
|
|
kAMCR_EL0 = encode(0b11, 0b011, 0b1101, 0b0010, 0b000),
|
|
|
kAMEVCNTR00_EL0 = encode(0b11, 0b011, 0b1101, 0b0100, 0b000),
|
|
|
kAMEVCNTR01_EL0 = encode(0b11, 0b011, 0b1101, 0b0100, 0b001),
|
|
|
kAMEVCNTR02_EL0 = encode(0b11, 0b011, 0b1101, 0b0100, 0b010),
|
|
|
kAMEVCNTR03_EL0 = encode(0b11, 0b011, 0b1101, 0b0100, 0b011),
|
|
|
kAMEVCNTR10_EL0 = encode(0b11, 0b011, 0b1101, 0b1100, 0b000),
|
|
|
kAMEVCNTR110_EL0 = encode(0b11, 0b011, 0b1101, 0b1101, 0b010),
|
|
|
kAMEVCNTR111_EL0 = encode(0b11, 0b011, 0b1101, 0b1101, 0b011),
|
|
|
kAMEVCNTR112_EL0 = encode(0b11, 0b011, 0b1101, 0b1101, 0b100),
|
|
|
kAMEVCNTR113_EL0 = encode(0b11, 0b011, 0b1101, 0b1101, 0b101),
|
|
|
kAMEVCNTR114_EL0 = encode(0b11, 0b011, 0b1101, 0b1101, 0b110),
|
|
|
kAMEVCNTR115_EL0 = encode(0b11, 0b011, 0b1101, 0b1101, 0b111),
|
|
|
kAMEVCNTR11_EL0 = encode(0b11, 0b011, 0b1101, 0b1100, 0b001),
|
|
|
kAMEVCNTR12_EL0 = encode(0b11, 0b011, 0b1101, 0b1100, 0b010),
|
|
|
kAMEVCNTR13_EL0 = encode(0b11, 0b011, 0b1101, 0b1100, 0b011),
|
|
|
kAMEVCNTR14_EL0 = encode(0b11, 0b011, 0b1101, 0b1100, 0b100),
|
|
|
kAMEVCNTR15_EL0 = encode(0b11, 0b011, 0b1101, 0b1100, 0b101),
|
|
|
kAMEVCNTR16_EL0 = encode(0b11, 0b011, 0b1101, 0b1100, 0b110),
|
|
|
kAMEVCNTR17_EL0 = encode(0b11, 0b011, 0b1101, 0b1100, 0b111),
|
|
|
kAMEVCNTR18_EL0 = encode(0b11, 0b011, 0b1101, 0b1101, 0b000),
|
|
|
kAMEVCNTR19_EL0 = encode(0b11, 0b011, 0b1101, 0b1101, 0b001),
|
|
|
kAMEVTYPER00_EL0 = encode(0b11, 0b011, 0b1101, 0b0110, 0b000),
|
|
|
kAMEVTYPER01_EL0 = encode(0b11, 0b011, 0b1101, 0b0110, 0b001),
|
|
|
kAMEVTYPER02_EL0 = encode(0b11, 0b011, 0b1101, 0b0110, 0b010),
|
|
|
kAMEVTYPER03_EL0 = encode(0b11, 0b011, 0b1101, 0b0110, 0b011),
|
|
|
kAMEVTYPER10_EL0 = encode(0b11, 0b011, 0b1101, 0b1110, 0b000),
|
|
|
kAMEVTYPER110_EL0 = encode(0b11, 0b011, 0b1101, 0b1111, 0b010),
|
|
|
kAMEVTYPER111_EL0 = encode(0b11, 0b011, 0b1101, 0b1111, 0b011),
|
|
|
kAMEVTYPER112_EL0 = encode(0b11, 0b011, 0b1101, 0b1111, 0b100),
|
|
|
kAMEVTYPER113_EL0 = encode(0b11, 0b011, 0b1101, 0b1111, 0b101),
|
|
|
kAMEVTYPER114_EL0 = encode(0b11, 0b011, 0b1101, 0b1111, 0b110),
|
|
|
kAMEVTYPER115_EL0 = encode(0b11, 0b011, 0b1101, 0b1111, 0b111),
|
|
|
kAMEVTYPER11_EL0 = encode(0b11, 0b011, 0b1101, 0b1110, 0b001),
|
|
|
kAMEVTYPER12_EL0 = encode(0b11, 0b011, 0b1101, 0b1110, 0b010),
|
|
|
kAMEVTYPER13_EL0 = encode(0b11, 0b011, 0b1101, 0b1110, 0b011),
|
|
|
kAMEVTYPER14_EL0 = encode(0b11, 0b011, 0b1101, 0b1110, 0b100),
|
|
|
kAMEVTYPER15_EL0 = encode(0b11, 0b011, 0b1101, 0b1110, 0b101),
|
|
|
kAMEVTYPER16_EL0 = encode(0b11, 0b011, 0b1101, 0b1110, 0b110),
|
|
|
kAMEVTYPER17_EL0 = encode(0b11, 0b011, 0b1101, 0b1110, 0b111),
|
|
|
kAMEVTYPER18_EL0 = encode(0b11, 0b011, 0b1101, 0b1111, 0b000),
|
|
|
kAMEVTYPER19_EL0 = encode(0b11, 0b011, 0b1101, 0b1111, 0b001),
|
|
|
kAMUSERENR_EL0 = encode(0b11, 0b011, 0b1101, 0b0010, 0b011),
|
|
|
kAPDAKeyHi_EL1 = encode(0b11, 0b000, 0b0010, 0b0010, 0b001),
|
|
|
kAPDAKeyLo_EL1 = encode(0b11, 0b000, 0b0010, 0b0010, 0b000),
|
|
|
kAPDBKeyHi_EL1 = encode(0b11, 0b000, 0b0010, 0b0010, 0b011),
|
|
|
kAPDBKeyLo_EL1 = encode(0b11, 0b000, 0b0010, 0b0010, 0b010),
|
|
|
kAPGAKeyHi_EL1 = encode(0b11, 0b000, 0b0010, 0b0011, 0b001),
|
|
|
kAPGAKeyLo_EL1 = encode(0b11, 0b000, 0b0010, 0b0011, 0b000),
|
|
|
kAPIAKeyHi_EL1 = encode(0b11, 0b000, 0b0010, 0b0001, 0b001),
|
|
|
kAPIAKeyLo_EL1 = encode(0b11, 0b000, 0b0010, 0b0001, 0b000),
|
|
|
kAPIBKeyHi_EL1 = encode(0b11, 0b000, 0b0010, 0b0001, 0b011),
|
|
|
kAPIBKeyLo_EL1 = encode(0b11, 0b000, 0b0010, 0b0001, 0b010),
|
|
|
kCCSIDR2_EL1 = encode(0b11, 0b001, 0b0000, 0b0000, 0b010),
|
|
|
kCCSIDR_EL1 = encode(0b11, 0b001, 0b0000, 0b0000, 0b000),
|
|
|
kCLIDR_EL1 = encode(0b11, 0b001, 0b0000, 0b0000, 0b001),
|
|
|
kCNTFRQ_EL0 = encode(0b11, 0b011, 0b1110, 0b0000, 0b000),
|
|
|
kCNTHCTL_EL2 = encode(0b11, 0b100, 0b1110, 0b0001, 0b000),
|
|
|
kCNTHPS_CTL_EL2 = encode(0b11, 0b100, 0b1110, 0b0101, 0b001),
|
|
|
kCNTHPS_CVAL_EL2 = encode(0b11, 0b100, 0b1110, 0b0101, 0b010),
|
|
|
kCNTHPS_TVAL_EL2 = encode(0b11, 0b100, 0b1110, 0b0101, 0b000),
|
|
|
kCNTHP_CTL_EL2 = encode(0b11, 0b100, 0b1110, 0b0010, 0b001),
|
|
|
kCNTHP_CVAL_EL2 = encode(0b11, 0b100, 0b1110, 0b0010, 0b010),
|
|
|
kCNTHP_TVAL_EL2 = encode(0b11, 0b100, 0b1110, 0b0010, 0b000),
|
|
|
kCNTHVS_CTL_EL2 = encode(0b11, 0b100, 0b1110, 0b0100, 0b001),
|
|
|
kCNTHVS_CVAL_EL2 = encode(0b11, 0b100, 0b1110, 0b0100, 0b010),
|
|
|
kCNTHVS_TVAL_EL2 = encode(0b11, 0b100, 0b1110, 0b0100, 0b000),
|
|
|
kCNTHV_CTL_EL2 = encode(0b11, 0b100, 0b1110, 0b0011, 0b001),
|
|
|
kCNTHV_CVAL_EL2 = encode(0b11, 0b100, 0b1110, 0b0011, 0b010),
|
|
|
kCNTHV_TVAL_EL2 = encode(0b11, 0b100, 0b1110, 0b0011, 0b000),
|
|
|
kCNTISCALE_EL2 = encode(0b11, 0b100, 0b1110, 0b0000, 0b101),
|
|
|
kCNTKCTL_EL1 = encode(0b11, 0b000, 0b1110, 0b0001, 0b000),
|
|
|
kCNTKCTL_EL12 = encode(0b11, 0b101, 0b1110, 0b0001, 0b000),
|
|
|
kCNTPCTSS_EL0 = encode(0b11, 0b011, 0b1110, 0b0000, 0b101),
|
|
|
kCNTPCT_EL0 = encode(0b11, 0b011, 0b1110, 0b0000, 0b001),
|
|
|
kCNTPOFF_EL2 = encode(0b11, 0b100, 0b1110, 0b0000, 0b110),
|
|
|
kCNTPS_CTL_EL1 = encode(0b11, 0b111, 0b1110, 0b0010, 0b001),
|
|
|
kCNTPS_CVAL_EL1 = encode(0b11, 0b111, 0b1110, 0b0010, 0b010),
|
|
|
kCNTPS_TVAL_EL1 = encode(0b11, 0b111, 0b1110, 0b0010, 0b000),
|
|
|
kCNTP_CTL_EL0 = encode(0b11, 0b011, 0b1110, 0b0010, 0b001),
|
|
|
kCNTP_CTL_EL02 = encode(0b11, 0b101, 0b1110, 0b0010, 0b001),
|
|
|
kCNTP_CVAL_EL0 = encode(0b11, 0b011, 0b1110, 0b0010, 0b010),
|
|
|
kCNTP_CVAL_EL02 = encode(0b11, 0b101, 0b1110, 0b0010, 0b010),
|
|
|
kCNTP_TVAL_EL0 = encode(0b11, 0b011, 0b1110, 0b0010, 0b000),
|
|
|
kCNTP_TVAL_EL02 = encode(0b11, 0b101, 0b1110, 0b0010, 0b000),
|
|
|
kCNTSCALE_EL2 = encode(0b11, 0b100, 0b1110, 0b0000, 0b100),
|
|
|
kCNTVCTSS_EL0 = encode(0b11, 0b011, 0b1110, 0b0000, 0b110),
|
|
|
kCNTVCT_EL0 = encode(0b11, 0b011, 0b1110, 0b0000, 0b010),
|
|
|
kCNTVFRQ_EL2 = encode(0b11, 0b100, 0b1110, 0b0000, 0b111),
|
|
|
kCNTVOFF_EL2 = encode(0b11, 0b100, 0b1110, 0b0000, 0b011),
|
|
|
kCNTV_CTL_EL0 = encode(0b11, 0b011, 0b1110, 0b0011, 0b001),
|
|
|
kCNTV_CTL_EL02 = encode(0b11, 0b101, 0b1110, 0b0011, 0b001),
|
|
|
kCNTV_CVAL_EL0 = encode(0b11, 0b011, 0b1110, 0b0011, 0b010),
|
|
|
kCNTV_CVAL_EL02 = encode(0b11, 0b101, 0b1110, 0b0011, 0b010),
|
|
|
kCNTV_TVAL_EL0 = encode(0b11, 0b011, 0b1110, 0b0011, 0b000),
|
|
|
kCNTV_TVAL_EL02 = encode(0b11, 0b101, 0b1110, 0b0011, 0b000),
|
|
|
kCONTEXTIDR_EL1 = encode(0b11, 0b000, 0b1101, 0b0000, 0b001),
|
|
|
kCONTEXTIDR_EL12 = encode(0b11, 0b101, 0b1101, 0b0000, 0b001),
|
|
|
kCONTEXTIDR_EL2 = encode(0b11, 0b100, 0b1101, 0b0000, 0b001),
|
|
|
kCPACR_EL1 = encode(0b11, 0b000, 0b0001, 0b0000, 0b010),
|
|
|
kCPACR_EL12 = encode(0b11, 0b101, 0b0001, 0b0000, 0b010),
|
|
|
kCPM_IOACC_CTL_EL3 = encode(0b11, 0b111, 0b1111, 0b0010, 0b000),
|
|
|
kCPTR_EL2 = encode(0b11, 0b100, 0b0001, 0b0001, 0b010),
|
|
|
kCPTR_EL3 = encode(0b11, 0b110, 0b0001, 0b0001, 0b010),
|
|
|
kCSSELR_EL1 = encode(0b11, 0b010, 0b0000, 0b0000, 0b000),
|
|
|
kCTR_EL0 = encode(0b11, 0b011, 0b0000, 0b0000, 0b001),
|
|
|
kCurrentEL = encode(0b11, 0b000, 0b0100, 0b0010, 0b010),
|
|
|
kDACR32_EL2 = encode(0b11, 0b100, 0b0011, 0b0000, 0b000),
|
|
|
kDAIF = encode(0b11, 0b011, 0b0100, 0b0010, 0b001),
|
|
|
kDBGAUTHSTATUS_EL1 = encode(0b10, 0b000, 0b0111, 0b1110, 0b110),
|
|
|
kDBGBCR0_EL1 = encode(0b10, 0b000, 0b0000, 0b0000, 0b101),
|
|
|
kDBGBCR10_EL1 = encode(0b10, 0b000, 0b0000, 0b1010, 0b101),
|
|
|
kDBGBCR11_EL1 = encode(0b10, 0b000, 0b0000, 0b1011, 0b101),
|
|
|
kDBGBCR12_EL1 = encode(0b10, 0b000, 0b0000, 0b1100, 0b101),
|
|
|
kDBGBCR13_EL1 = encode(0b10, 0b000, 0b0000, 0b1101, 0b101),
|
|
|
kDBGBCR14_EL1 = encode(0b10, 0b000, 0b0000, 0b1110, 0b101),
|
|
|
kDBGBCR15_EL1 = encode(0b10, 0b000, 0b0000, 0b1111, 0b101),
|
|
|
kDBGBCR1_EL1 = encode(0b10, 0b000, 0b0000, 0b0001, 0b101),
|
|
|
kDBGBCR2_EL1 = encode(0b10, 0b000, 0b0000, 0b0010, 0b101),
|
|
|
kDBGBCR3_EL1 = encode(0b10, 0b000, 0b0000, 0b0011, 0b101),
|
|
|
kDBGBCR4_EL1 = encode(0b10, 0b000, 0b0000, 0b0100, 0b101),
|
|
|
kDBGBCR5_EL1 = encode(0b10, 0b000, 0b0000, 0b0101, 0b101),
|
|
|
kDBGBCR6_EL1 = encode(0b10, 0b000, 0b0000, 0b0110, 0b101),
|
|
|
kDBGBCR7_EL1 = encode(0b10, 0b000, 0b0000, 0b0111, 0b101),
|
|
|
kDBGBCR8_EL1 = encode(0b10, 0b000, 0b0000, 0b1000, 0b101),
|
|
|
kDBGBCR9_EL1 = encode(0b10, 0b000, 0b0000, 0b1001, 0b101),
|
|
|
kDBGBVR0_EL1 = encode(0b10, 0b000, 0b0000, 0b0000, 0b100),
|
|
|
kDBGBVR10_EL1 = encode(0b10, 0b000, 0b0000, 0b1010, 0b100),
|
|
|
kDBGBVR11_EL1 = encode(0b10, 0b000, 0b0000, 0b1011, 0b100),
|
|
|
kDBGBVR12_EL1 = encode(0b10, 0b000, 0b0000, 0b1100, 0b100),
|
|
|
kDBGBVR13_EL1 = encode(0b10, 0b000, 0b0000, 0b1101, 0b100),
|
|
|
kDBGBVR14_EL1 = encode(0b10, 0b000, 0b0000, 0b1110, 0b100),
|
|
|
kDBGBVR15_EL1 = encode(0b10, 0b000, 0b0000, 0b1111, 0b100),
|
|
|
kDBGBVR1_EL1 = encode(0b10, 0b000, 0b0000, 0b0001, 0b100),
|
|
|
kDBGBVR2_EL1 = encode(0b10, 0b000, 0b0000, 0b0010, 0b100),
|
|
|
kDBGBVR3_EL1 = encode(0b10, 0b000, 0b0000, 0b0011, 0b100),
|
|
|
kDBGBVR4_EL1 = encode(0b10, 0b000, 0b0000, 0b0100, 0b100),
|
|
|
kDBGBVR5_EL1 = encode(0b10, 0b000, 0b0000, 0b0101, 0b100),
|
|
|
kDBGBVR6_EL1 = encode(0b10, 0b000, 0b0000, 0b0110, 0b100),
|
|
|
kDBGBVR7_EL1 = encode(0b10, 0b000, 0b0000, 0b0111, 0b100),
|
|
|
kDBGBVR8_EL1 = encode(0b10, 0b000, 0b0000, 0b1000, 0b100),
|
|
|
kDBGBVR9_EL1 = encode(0b10, 0b000, 0b0000, 0b1001, 0b100),
|
|
|
kDBGCLAIMCLR_EL1 = encode(0b10, 0b000, 0b0111, 0b1001, 0b110),
|
|
|
kDBGCLAIMSET_EL1 = encode(0b10, 0b000, 0b0111, 0b1000, 0b110),
|
|
|
kDBGDTRRX_EL0 = encode(0b10, 0b011, 0b0000, 0b0101, 0b000),
|
|
|
kDBGDTRTX_EL0 = encode(0b10, 0b011, 0b0000, 0b0101, 0b000),
|
|
|
kDBGDTR_EL0 = encode(0b10, 0b011, 0b0000, 0b0100, 0b000),
|
|
|
kDBGPRCR_EL1 = encode(0b10, 0b000, 0b0001, 0b0100, 0b100),
|
|
|
kDBGVCR32_EL2 = encode(0b10, 0b100, 0b0000, 0b0111, 0b000),
|
|
|
kDBGWCR0_EL1 = encode(0b10, 0b000, 0b0000, 0b0000, 0b111),
|
|
|
kDBGWCR10_EL1 = encode(0b10, 0b000, 0b0000, 0b1010, 0b111),
|
|
|
kDBGWCR11_EL1 = encode(0b10, 0b000, 0b0000, 0b1011, 0b111),
|
|
|
kDBGWCR12_EL1 = encode(0b10, 0b000, 0b0000, 0b1100, 0b111),
|
|
|
kDBGWCR13_EL1 = encode(0b10, 0b000, 0b0000, 0b1101, 0b111),
|
|
|
kDBGWCR14_EL1 = encode(0b10, 0b000, 0b0000, 0b1110, 0b111),
|
|
|
kDBGWCR15_EL1 = encode(0b10, 0b000, 0b0000, 0b1111, 0b111),
|
|
|
kDBGWCR1_EL1 = encode(0b10, 0b000, 0b0000, 0b0001, 0b111),
|
|
|
kDBGWCR2_EL1 = encode(0b10, 0b000, 0b0000, 0b0010, 0b111),
|
|
|
kDBGWCR3_EL1 = encode(0b10, 0b000, 0b0000, 0b0011, 0b111),
|
|
|
kDBGWCR4_EL1 = encode(0b10, 0b000, 0b0000, 0b0100, 0b111),
|
|
|
kDBGWCR5_EL1 = encode(0b10, 0b000, 0b0000, 0b0101, 0b111),
|
|
|
kDBGWCR6_EL1 = encode(0b10, 0b000, 0b0000, 0b0110, 0b111),
|
|
|
kDBGWCR7_EL1 = encode(0b10, 0b000, 0b0000, 0b0111, 0b111),
|
|
|
kDBGWCR8_EL1 = encode(0b10, 0b000, 0b0000, 0b1000, 0b111),
|
|
|
kDBGWCR9_EL1 = encode(0b10, 0b000, 0b0000, 0b1001, 0b111),
|
|
|
kDBGWVR0_EL1 = encode(0b10, 0b000, 0b0000, 0b0000, 0b110),
|
|
|
kDBGWVR10_EL1 = encode(0b10, 0b000, 0b0000, 0b1010, 0b110),
|
|
|
kDBGWVR11_EL1 = encode(0b10, 0b000, 0b0000, 0b1011, 0b110),
|
|
|
kDBGWVR12_EL1 = encode(0b10, 0b000, 0b0000, 0b1100, 0b110),
|
|
|
kDBGWVR13_EL1 = encode(0b10, 0b000, 0b0000, 0b1101, 0b110),
|
|
|
kDBGWVR14_EL1 = encode(0b10, 0b000, 0b0000, 0b1110, 0b110),
|
|
|
kDBGWVR15_EL1 = encode(0b10, 0b000, 0b0000, 0b1111, 0b110),
|
|
|
kDBGWVR1_EL1 = encode(0b10, 0b000, 0b0000, 0b0001, 0b110),
|
|
|
kDBGWVR2_EL1 = encode(0b10, 0b000, 0b0000, 0b0010, 0b110),
|
|
|
kDBGWVR3_EL1 = encode(0b10, 0b000, 0b0000, 0b0011, 0b110),
|
|
|
kDBGWVR4_EL1 = encode(0b10, 0b000, 0b0000, 0b0100, 0b110),
|
|
|
kDBGWVR5_EL1 = encode(0b10, 0b000, 0b0000, 0b0101, 0b110),
|
|
|
kDBGWVR6_EL1 = encode(0b10, 0b000, 0b0000, 0b0110, 0b110),
|
|
|
kDBGWVR7_EL1 = encode(0b10, 0b000, 0b0000, 0b0111, 0b110),
|
|
|
kDBGWVR8_EL1 = encode(0b10, 0b000, 0b0000, 0b1000, 0b110),
|
|
|
kDBGWVR9_EL1 = encode(0b10, 0b000, 0b0000, 0b1001, 0b110),
|
|
|
kDCZID_EL0 = encode(0b11, 0b011, 0b0000, 0b0000, 0b111),
|
|
|
kDISR_EL1 = encode(0b11, 0b000, 0b1100, 0b0001, 0b001),
|
|
|
kDIT = encode(0b11, 0b011, 0b0100, 0b0010, 0b101),
|
|
|
kDLR_EL0 = encode(0b11, 0b011, 0b0100, 0b0101, 0b001),
|
|
|
kDSPSR_EL0 = encode(0b11, 0b011, 0b0100, 0b0101, 0b000),
|
|
|
kELR_EL1 = encode(0b11, 0b000, 0b0100, 0b0000, 0b001),
|
|
|
kELR_EL12 = encode(0b11, 0b101, 0b0100, 0b0000, 0b001),
|
|
|
kELR_EL2 = encode(0b11, 0b100, 0b0100, 0b0000, 0b001),
|
|
|
kELR_EL3 = encode(0b11, 0b110, 0b0100, 0b0000, 0b001),
|
|
|
kERRIDR_EL1 = encode(0b11, 0b000, 0b0101, 0b0011, 0b000),
|
|
|
kERRSELR_EL1 = encode(0b11, 0b000, 0b0101, 0b0011, 0b001),
|
|
|
kERXADDR_EL1 = encode(0b11, 0b000, 0b0101, 0b0100, 0b011),
|
|
|
kERXCTLR_EL1 = encode(0b11, 0b000, 0b0101, 0b0100, 0b001),
|
|
|
kERXFR_EL1 = encode(0b11, 0b000, 0b0101, 0b0100, 0b000),
|
|
|
kERXMISC0_EL1 = encode(0b11, 0b000, 0b0101, 0b0101, 0b000),
|
|
|
kERXMISC1_EL1 = encode(0b11, 0b000, 0b0101, 0b0101, 0b001),
|
|
|
kERXMISC2_EL1 = encode(0b11, 0b000, 0b0101, 0b0101, 0b010),
|
|
|
kERXMISC3_EL1 = encode(0b11, 0b000, 0b0101, 0b0101, 0b011),
|
|
|
kERXPFGCDN_EL1 = encode(0b11, 0b000, 0b0101, 0b0100, 0b110),
|
|
|
kERXPFGCTL_EL1 = encode(0b11, 0b000, 0b0101, 0b0100, 0b101),
|
|
|
kERXPFGF_EL1 = encode(0b11, 0b000, 0b0101, 0b0100, 0b100),
|
|
|
kERXSTATUS_EL1 = encode(0b11, 0b000, 0b0101, 0b0100, 0b010),
|
|
|
kESR_EL1 = encode(0b11, 0b000, 0b0101, 0b0010, 0b000),
|
|
|
kESR_EL12 = encode(0b11, 0b101, 0b0101, 0b0010, 0b000),
|
|
|
kESR_EL2 = encode(0b11, 0b100, 0b0101, 0b0010, 0b000),
|
|
|
kESR_EL3 = encode(0b11, 0b110, 0b0101, 0b0010, 0b000),
|
|
|
kFAR_EL1 = encode(0b11, 0b000, 0b0110, 0b0000, 0b000),
|
|
|
kFAR_EL12 = encode(0b11, 0b101, 0b0110, 0b0000, 0b000),
|
|
|
kFAR_EL2 = encode(0b11, 0b100, 0b0110, 0b0000, 0b000),
|
|
|
kFAR_EL3 = encode(0b11, 0b110, 0b0110, 0b0000, 0b000),
|
|
|
kFPCR = encode(0b11, 0b011, 0b0100, 0b0100, 0b000),
|
|
|
kFPEXC32_EL2 = encode(0b11, 0b100, 0b0101, 0b0011, 0b000),
|
|
|
kFPSR = encode(0b11, 0b011, 0b0100, 0b0100, 0b001),
|
|
|
kGCR_EL1 = encode(0b11, 0b000, 0b0001, 0b0000, 0b110),
|
|
|
kGMID_EL1 = encode(0b11, 0b001, 0b0000, 0b0000, 0b100),
|
|
|
kHACR_EL2 = encode(0b11, 0b100, 0b0001, 0b0001, 0b111),
|
|
|
kHCR_EL2 = encode(0b11, 0b100, 0b0001, 0b0001, 0b000),
|
|
|
kHDFGRTR_EL2 = encode(0b11, 0b100, 0b0011, 0b0001, 0b100),
|
|
|
kHDFGWTR_EL2 = encode(0b11, 0b100, 0b0011, 0b0001, 0b101),
|
|
|
kHFGITR_EL2 = encode(0b11, 0b100, 0b0001, 0b0001, 0b110),
|
|
|
kHFGRTR_EL2 = encode(0b11, 0b100, 0b0001, 0b0001, 0b100),
|
|
|
kHFGWTR_EL2 = encode(0b11, 0b100, 0b0001, 0b0001, 0b101),
|
|
|
kHPFAR_EL2 = encode(0b11, 0b100, 0b0110, 0b0000, 0b100),
|
|
|
kHSTR_EL2 = encode(0b11, 0b100, 0b0001, 0b0001, 0b011),
|
|
|
kICC_AP0R0_EL1 = encode(0b11, 0b000, 0b1100, 0b1000, 0b100),
|
|
|
kICC_AP0R1_EL1 = encode(0b11, 0b000, 0b1100, 0b1000, 0b101),
|
|
|
kICC_AP0R2_EL1 = encode(0b11, 0b000, 0b1100, 0b1000, 0b110),
|
|
|
kICC_AP0R3_EL1 = encode(0b11, 0b000, 0b1100, 0b1000, 0b111),
|
|
|
kICC_AP1R0_EL1 = encode(0b11, 0b000, 0b1100, 0b1001, 0b000),
|
|
|
kICC_AP1R1_EL1 = encode(0b11, 0b000, 0b1100, 0b1001, 0b001),
|
|
|
kICC_AP1R2_EL1 = encode(0b11, 0b000, 0b1100, 0b1001, 0b010),
|
|
|
kICC_AP1R3_EL1 = encode(0b11, 0b000, 0b1100, 0b1001, 0b011),
|
|
|
kICC_ASGI1R_EL1 = encode(0b11, 0b000, 0b1100, 0b1011, 0b110),
|
|
|
kICC_BPR0_EL1 = encode(0b11, 0b000, 0b1100, 0b1000, 0b011),
|
|
|
kICC_BPR1_EL1 = encode(0b11, 0b000, 0b1100, 0b1100, 0b011),
|
|
|
kICC_CTLR_EL1 = encode(0b11, 0b000, 0b1100, 0b1100, 0b100),
|
|
|
kICC_CTLR_EL3 = encode(0b11, 0b110, 0b1100, 0b1100, 0b100),
|
|
|
kICC_DIR_EL1 = encode(0b11, 0b000, 0b1100, 0b1011, 0b001),
|
|
|
kICC_EOIR0_EL1 = encode(0b11, 0b000, 0b1100, 0b1000, 0b001),
|
|
|
kICC_EOIR1_EL1 = encode(0b11, 0b000, 0b1100, 0b1100, 0b001),
|
|
|
kICC_HPPIR0_EL1 = encode(0b11, 0b000, 0b1100, 0b1000, 0b010),
|
|
|
kICC_HPPIR1_EL1 = encode(0b11, 0b000, 0b1100, 0b1100, 0b010),
|
|
|
kICC_IAR0_EL1 = encode(0b11, 0b000, 0b1100, 0b1000, 0b000),
|
|
|
kICC_IAR1_EL1 = encode(0b11, 0b000, 0b1100, 0b1100, 0b000),
|
|
|
kICC_IGRPEN0_EL1 = encode(0b11, 0b000, 0b1100, 0b1100, 0b110),
|
|
|
kICC_IGRPEN1_EL1 = encode(0b11, 0b000, 0b1100, 0b1100, 0b111),
|
|
|
kICC_IGRPEN1_EL3 = encode(0b11, 0b110, 0b1100, 0b1100, 0b111),
|
|
|
kICC_PMR_EL1 = encode(0b11, 0b000, 0b0100, 0b0110, 0b000),
|
|
|
kICC_RPR_EL1 = encode(0b11, 0b000, 0b1100, 0b1011, 0b011),
|
|
|
kICC_SGI0R_EL1 = encode(0b11, 0b000, 0b1100, 0b1011, 0b111),
|
|
|
kICC_SGI1R_EL1 = encode(0b11, 0b000, 0b1100, 0b1011, 0b101),
|
|
|
kICC_SRE_EL1 = encode(0b11, 0b000, 0b1100, 0b1100, 0b101),
|
|
|
kICC_SRE_EL2 = encode(0b11, 0b100, 0b1100, 0b1001, 0b101),
|
|
|
kICC_SRE_EL3 = encode(0b11, 0b110, 0b1100, 0b1100, 0b101),
|
|
|
kICH_AP0R0_EL2 = encode(0b11, 0b100, 0b1100, 0b1000, 0b000),
|
|
|
kICH_AP0R1_EL2 = encode(0b11, 0b100, 0b1100, 0b1000, 0b001),
|
|
|
kICH_AP0R2_EL2 = encode(0b11, 0b100, 0b1100, 0b1000, 0b010),
|
|
|
kICH_AP0R3_EL2 = encode(0b11, 0b100, 0b1100, 0b1000, 0b011),
|
|
|
kICH_AP1R0_EL2 = encode(0b11, 0b100, 0b1100, 0b1001, 0b000),
|
|
|
kICH_AP1R1_EL2 = encode(0b11, 0b100, 0b1100, 0b1001, 0b001),
|
|
|
kICH_AP1R2_EL2 = encode(0b11, 0b100, 0b1100, 0b1001, 0b010),
|
|
|
kICH_AP1R3_EL2 = encode(0b11, 0b100, 0b1100, 0b1001, 0b011),
|
|
|
kICH_EISR_EL2 = encode(0b11, 0b100, 0b1100, 0b1011, 0b011),
|
|
|
kICH_ELRSR_EL2 = encode(0b11, 0b100, 0b1100, 0b1011, 0b101),
|
|
|
kICH_HCR_EL2 = encode(0b11, 0b100, 0b1100, 0b1011, 0b000),
|
|
|
kICH_LR0_EL2 = encode(0b11, 0b100, 0b1100, 0b1100, 0b000),
|
|
|
kICH_LR10_EL2 = encode(0b11, 0b100, 0b1100, 0b1101, 0b010),
|
|
|
kICH_LR11_EL2 = encode(0b11, 0b100, 0b1100, 0b1101, 0b011),
|
|
|
kICH_LR12_EL2 = encode(0b11, 0b100, 0b1100, 0b1101, 0b100),
|
|
|
kICH_LR13_EL2 = encode(0b11, 0b100, 0b1100, 0b1101, 0b101),
|
|
|
kICH_LR14_EL2 = encode(0b11, 0b100, 0b1100, 0b1101, 0b110),
|
|
|
kICH_LR15_EL2 = encode(0b11, 0b100, 0b1100, 0b1101, 0b111),
|
|
|
kICH_LR1_EL2 = encode(0b11, 0b100, 0b1100, 0b1100, 0b001),
|
|
|
kICH_LR2_EL2 = encode(0b11, 0b100, 0b1100, 0b1100, 0b010),
|
|
|
kICH_LR3_EL2 = encode(0b11, 0b100, 0b1100, 0b1100, 0b011),
|
|
|
kICH_LR4_EL2 = encode(0b11, 0b100, 0b1100, 0b1100, 0b100),
|
|
|
kICH_LR5_EL2 = encode(0b11, 0b100, 0b1100, 0b1100, 0b101),
|
|
|
kICH_LR6_EL2 = encode(0b11, 0b100, 0b1100, 0b1100, 0b110),
|
|
|
kICH_LR7_EL2 = encode(0b11, 0b100, 0b1100, 0b1100, 0b111),
|
|
|
kICH_LR8_EL2 = encode(0b11, 0b100, 0b1100, 0b1101, 0b000),
|
|
|
kICH_LR9_EL2 = encode(0b11, 0b100, 0b1100, 0b1101, 0b001),
|
|
|
kICH_MISR_EL2 = encode(0b11, 0b100, 0b1100, 0b1011, 0b010),
|
|
|
kICH_VMCR_EL2 = encode(0b11, 0b100, 0b1100, 0b1011, 0b111),
|
|
|
kICH_VTR_EL2 = encode(0b11, 0b100, 0b1100, 0b1011, 0b001),
|
|
|
kID_AA64AFR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0101, 0b100),
|
|
|
kID_AA64AFR1_EL1 = encode(0b11, 0b000, 0b0000, 0b0101, 0b101),
|
|
|
kID_AA64DFR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0101, 0b000),
|
|
|
kID_AA64DFR1_EL1 = encode(0b11, 0b000, 0b0000, 0b0101, 0b001),
|
|
|
kID_AA64ISAR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0110, 0b000),
|
|
|
kID_AA64ISAR1_EL1 = encode(0b11, 0b000, 0b0000, 0b0110, 0b001),
|
|
|
kID_AA64ISAR2_EL1 = encode(0b11, 0b000, 0b0000, 0b0110, 0b010),
|
|
|
kID_AA64MMFR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0111, 0b000),
|
|
|
kID_AA64MMFR1_EL1 = encode(0b11, 0b000, 0b0000, 0b0111, 0b001),
|
|
|
kID_AA64MMFR2_EL1 = encode(0b11, 0b000, 0b0000, 0b0111, 0b010),
|
|
|
kID_AA64MMFR3_EL1 = encode(0b11, 0b000, 0b0000, 0b0111, 0b011),
|
|
|
kID_AA64MMFR4_EL1 = encode(0b11, 0b000, 0b0000, 0b0111, 0b100),
|
|
|
kID_AA64PFR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0100, 0b000),
|
|
|
kID_AA64PFR1_EL1 = encode(0b11, 0b000, 0b0000, 0b0100, 0b001),
|
|
|
kID_AA64ZFR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0100, 0b100),
|
|
|
kID_AFR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0001, 0b011),
|
|
|
kID_DFR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0001, 0b010),
|
|
|
kID_ISAR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0010, 0b000),
|
|
|
kID_ISAR1_EL1 = encode(0b11, 0b000, 0b0000, 0b0010, 0b001),
|
|
|
kID_ISAR2_EL1 = encode(0b11, 0b000, 0b0000, 0b0010, 0b010),
|
|
|
kID_ISAR3_EL1 = encode(0b11, 0b000, 0b0000, 0b0010, 0b011),
|
|
|
kID_ISAR4_EL1 = encode(0b11, 0b000, 0b0000, 0b0010, 0b100),
|
|
|
kID_ISAR5_EL1 = encode(0b11, 0b000, 0b0000, 0b0010, 0b101),
|
|
|
kID_ISAR6_EL1 = encode(0b11, 0b000, 0b0000, 0b0010, 0b111),
|
|
|
kID_MMFR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0001, 0b100),
|
|
|
kID_MMFR1_EL1 = encode(0b11, 0b000, 0b0000, 0b0001, 0b101),
|
|
|
kID_MMFR2_EL1 = encode(0b11, 0b000, 0b0000, 0b0001, 0b110),
|
|
|
kID_MMFR3_EL1 = encode(0b11, 0b000, 0b0000, 0b0001, 0b111),
|
|
|
kID_MMFR4_EL1 = encode(0b11, 0b000, 0b0000, 0b0010, 0b110),
|
|
|
kID_MMFR5_EL1 = encode(0b11, 0b000, 0b0000, 0b0011, 0b110),
|
|
|
kID_PFR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0001, 0b000),
|
|
|
kID_PFR1_EL1 = encode(0b11, 0b000, 0b0000, 0b0001, 0b001),
|
|
|
kID_PFR2_EL1 = encode(0b11, 0b000, 0b0000, 0b0011, 0b100),
|
|
|
kIFSR32_EL2 = encode(0b11, 0b100, 0b0101, 0b0000, 0b001),
|
|
|
kISR_EL1 = encode(0b11, 0b000, 0b1100, 0b0001, 0b000),
|
|
|
kLORC_EL1 = encode(0b11, 0b000, 0b1010, 0b0100, 0b011),
|
|
|
kLOREA_EL1 = encode(0b11, 0b000, 0b1010, 0b0100, 0b001),
|
|
|
kLORID_EL1 = encode(0b11, 0b000, 0b1010, 0b0100, 0b111),
|
|
|
kLORN_EL1 = encode(0b11, 0b000, 0b1010, 0b0100, 0b010),
|
|
|
kLORSA_EL1 = encode(0b11, 0b000, 0b1010, 0b0100, 0b000),
|
|
|
kMAIR_EL1 = encode(0b11, 0b000, 0b1010, 0b0010, 0b000),
|
|
|
kMAIR_EL12 = encode(0b11, 0b101, 0b1010, 0b0010, 0b000),
|
|
|
kMAIR_EL2 = encode(0b11, 0b100, 0b1010, 0b0010, 0b000),
|
|
|
kMAIR_EL3 = encode(0b11, 0b110, 0b1010, 0b0010, 0b000),
|
|
|
kMDCCINT_EL1 = encode(0b10, 0b000, 0b0000, 0b0010, 0b000),
|
|
|
kMDCCSR_EL0 = encode(0b10, 0b011, 0b0000, 0b0001, 0b000),
|
|
|
kMDCR_EL2 = encode(0b11, 0b100, 0b0001, 0b0001, 0b001),
|
|
|
kMDCR_EL3 = encode(0b11, 0b110, 0b0001, 0b0011, 0b001),
|
|
|
kMDRAR_EL1 = encode(0b10, 0b000, 0b0001, 0b0000, 0b000),
|
|
|
kMDSCR_EL1 = encode(0b10, 0b000, 0b0000, 0b0010, 0b010),
|
|
|
kMIDR_EL1 = encode(0b11, 0b000, 0b0000, 0b0000, 0b000),
|
|
|
kMPAM0_EL1 = encode(0b11, 0b000, 0b1010, 0b0101, 0b001),
|
|
|
kMPAM1_EL1 = encode(0b11, 0b000, 0b1010, 0b0101, 0b000),
|
|
|
kMPAM1_EL12 = encode(0b11, 0b101, 0b1010, 0b0101, 0b000),
|
|
|
kMPAM2_EL2 = encode(0b11, 0b100, 0b1010, 0b0101, 0b000),
|
|
|
kMPAM3_EL3 = encode(0b11, 0b110, 0b1010, 0b0101, 0b000),
|
|
|
kMPAMHCR_EL2 = encode(0b11, 0b100, 0b1010, 0b0100, 0b000),
|
|
|
kMPAMIDR_EL1 = encode(0b11, 0b000, 0b1010, 0b0100, 0b100),
|
|
|
kMPAMVPM0_EL2 = encode(0b11, 0b100, 0b1010, 0b0110, 0b000),
|
|
|
kMPAMVPM1_EL2 = encode(0b11, 0b100, 0b1010, 0b0110, 0b001),
|
|
|
kMPAMVPM2_EL2 = encode(0b11, 0b100, 0b1010, 0b0110, 0b010),
|
|
|
kMPAMVPM3_EL2 = encode(0b11, 0b100, 0b1010, 0b0110, 0b011),
|
|
|
kMPAMVPM4_EL2 = encode(0b11, 0b100, 0b1010, 0b0110, 0b100),
|
|
|
kMPAMVPM5_EL2 = encode(0b11, 0b100, 0b1010, 0b0110, 0b101),
|
|
|
kMPAMVPM6_EL2 = encode(0b11, 0b100, 0b1010, 0b0110, 0b110),
|
|
|
kMPAMVPM7_EL2 = encode(0b11, 0b100, 0b1010, 0b0110, 0b111),
|
|
|
kMPAMVPMV_EL2 = encode(0b11, 0b100, 0b1010, 0b0100, 0b001),
|
|
|
kMPIDR_EL1 = encode(0b11, 0b000, 0b0000, 0b0000, 0b101),
|
|
|
kMVFR0_EL1 = encode(0b11, 0b000, 0b0000, 0b0011, 0b000),
|
|
|
kMVFR1_EL1 = encode(0b11, 0b000, 0b0000, 0b0011, 0b001),
|
|
|
kMVFR2_EL1 = encode(0b11, 0b000, 0b0000, 0b0011, 0b010),
|
|
|
kNZCV = encode(0b11, 0b011, 0b0100, 0b0010, 0b000),
|
|
|
kOSDLR_EL1 = encode(0b10, 0b000, 0b0001, 0b0011, 0b100),
|
|
|
kOSDTRRX_EL1 = encode(0b10, 0b000, 0b0000, 0b0000, 0b010),
|
|
|
kOSDTRTX_EL1 = encode(0b10, 0b000, 0b0000, 0b0011, 0b010),
|
|
|
kOSECCR_EL1 = encode(0b10, 0b000, 0b0000, 0b0110, 0b010),
|
|
|
kOSLAR_EL1 = encode(0b10, 0b000, 0b0001, 0b0000, 0b100),
|
|
|
kOSLSR_EL1 = encode(0b10, 0b000, 0b0001, 0b0001, 0b100),
|
|
|
kPAN = encode(0b11, 0b000, 0b0100, 0b0010, 0b011),
|
|
|
kPAR_EL1 = encode(0b11, 0b000, 0b0111, 0b0100, 0b000),
|
|
|
kPMBIDR_EL1 = encode(0b11, 0b000, 0b1001, 0b1010, 0b111),
|
|
|
kPMBLIMITR_EL1 = encode(0b11, 0b000, 0b1001, 0b1010, 0b000),
|
|
|
kPMBPTR_EL1 = encode(0b11, 0b000, 0b1001, 0b1010, 0b001),
|
|
|
kPMBSR_EL1 = encode(0b11, 0b000, 0b1001, 0b1010, 0b011),
|
|
|
kPMCCFILTR_EL0 = encode(0b11, 0b011, 0b1110, 0b1111, 0b111),
|
|
|
kPMCCNTR_EL0 = encode(0b11, 0b011, 0b1001, 0b1101, 0b000),
|
|
|
kPMCEID0_EL0 = encode(0b11, 0b011, 0b1001, 0b1100, 0b110),
|
|
|
kPMCEID1_EL0 = encode(0b11, 0b011, 0b1001, 0b1100, 0b111),
|
|
|
kPMCNTENCLR_EL0 = encode(0b11, 0b011, 0b1001, 0b1100, 0b010),
|
|
|
kPMCNTENSET_EL0 = encode(0b11, 0b011, 0b1001, 0b1100, 0b001),
|
|
|
kPMCR_EL0 = encode(0b11, 0b011, 0b1001, 0b1100, 0b000),
|
|
|
kPMEVCNTR0_EL0 = encode(0b11, 0b011, 0b1110, 0b1000, 0b000),
|
|
|
kPMEVCNTR10_EL0 = encode(0b11, 0b011, 0b1110, 0b1001, 0b010),
|
|
|
kPMEVCNTR11_EL0 = encode(0b11, 0b011, 0b1110, 0b1001, 0b011),
|
|
|
kPMEVCNTR12_EL0 = encode(0b11, 0b011, 0b1110, 0b1001, 0b100),
|
|
|
kPMEVCNTR13_EL0 = encode(0b11, 0b011, 0b1110, 0b1001, 0b101),
|
|
|
kPMEVCNTR14_EL0 = encode(0b11, 0b011, 0b1110, 0b1001, 0b110),
|
|
|
kPMEVCNTR15_EL0 = encode(0b11, 0b011, 0b1110, 0b1001, 0b111),
|
|
|
kPMEVCNTR16_EL0 = encode(0b11, 0b011, 0b1110, 0b1010, 0b000),
|
|
|
kPMEVCNTR17_EL0 = encode(0b11, 0b011, 0b1110, 0b1010, 0b001),
|
|
|
kPMEVCNTR18_EL0 = encode(0b11, 0b011, 0b1110, 0b1010, 0b010),
|
|
|
kPMEVCNTR19_EL0 = encode(0b11, 0b011, 0b1110, 0b1010, 0b011),
|
|
|
kPMEVCNTR1_EL0 = encode(0b11, 0b011, 0b1110, 0b1000, 0b001),
|
|
|
kPMEVCNTR20_EL0 = encode(0b11, 0b011, 0b1110, 0b1010, 0b100),
|
|
|
kPMEVCNTR21_EL0 = encode(0b11, 0b011, 0b1110, 0b1010, 0b101),
|
|
|
kPMEVCNTR22_EL0 = encode(0b11, 0b011, 0b1110, 0b1010, 0b110),
|
|
|
kPMEVCNTR23_EL0 = encode(0b11, 0b011, 0b1110, 0b1010, 0b111),
|
|
|
kPMEVCNTR24_EL0 = encode(0b11, 0b011, 0b1110, 0b1011, 0b000),
|
|
|
kPMEVCNTR25_EL0 = encode(0b11, 0b011, 0b1110, 0b1011, 0b001),
|
|
|
kPMEVCNTR26_EL0 = encode(0b11, 0b011, 0b1110, 0b1011, 0b010),
|
|
|
kPMEVCNTR27_EL0 = encode(0b11, 0b011, 0b1110, 0b1011, 0b011),
|
|
|
kPMEVCNTR28_EL0 = encode(0b11, 0b011, 0b1110, 0b1011, 0b100),
|
|
|
kPMEVCNTR29_EL0 = encode(0b11, 0b011, 0b1110, 0b1011, 0b101),
|
|
|
kPMEVCNTR2_EL0 = encode(0b11, 0b011, 0b1110, 0b1000, 0b010),
|
|
|
kPMEVCNTR30_EL0 = encode(0b11, 0b011, 0b1110, 0b1011, 0b110),
|
|
|
kPMEVCNTR3_EL0 = encode(0b11, 0b011, 0b1110, 0b1000, 0b011),
|
|
|
kPMEVCNTR4_EL0 = encode(0b11, 0b011, 0b1110, 0b1000, 0b100),
|
|
|
kPMEVCNTR5_EL0 = encode(0b11, 0b011, 0b1110, 0b1000, 0b101),
|
|
|
kPMEVCNTR6_EL0 = encode(0b11, 0b011, 0b1110, 0b1000, 0b110),
|
|
|
kPMEVCNTR7_EL0 = encode(0b11, 0b011, 0b1110, 0b1000, 0b111),
|
|
|
kPMEVCNTR8_EL0 = encode(0b11, 0b011, 0b1110, 0b1001, 0b000),
|
|
|
kPMEVCNTR9_EL0 = encode(0b11, 0b011, 0b1110, 0b1001, 0b001),
|
|
|
kPMEVTYPER0_EL0 = encode(0b11, 0b011, 0b1110, 0b1100, 0b000),
|
|
|
kPMEVTYPER10_EL0 = encode(0b11, 0b011, 0b1110, 0b1101, 0b010),
|
|
|
kPMEVTYPER11_EL0 = encode(0b11, 0b011, 0b1110, 0b1101, 0b011),
|
|
|
kPMEVTYPER12_EL0 = encode(0b11, 0b011, 0b1110, 0b1101, 0b100),
|
|
|
kPMEVTYPER13_EL0 = encode(0b11, 0b011, 0b1110, 0b1101, 0b101),
|
|
|
kPMEVTYPER14_EL0 = encode(0b11, 0b011, 0b1110, 0b1101, 0b110),
|
|
|
kPMEVTYPER15_EL0 = encode(0b11, 0b011, 0b1110, 0b1101, 0b111),
|
|
|
kPMEVTYPER16_EL0 = encode(0b11, 0b011, 0b1110, 0b1110, 0b000),
|
|
|
kPMEVTYPER17_EL0 = encode(0b11, 0b011, 0b1110, 0b1110, 0b001),
|
|
|
kPMEVTYPER18_EL0 = encode(0b11, 0b011, 0b1110, 0b1110, 0b010),
|
|
|
kPMEVTYPER19_EL0 = encode(0b11, 0b011, 0b1110, 0b1110, 0b011),
|
|
|
kPMEVTYPER1_EL0 = encode(0b11, 0b011, 0b1110, 0b1100, 0b001),
|
|
|
kPMEVTYPER20_EL0 = encode(0b11, 0b011, 0b1110, 0b1110, 0b100),
|
|
|
kPMEVTYPER21_EL0 = encode(0b11, 0b011, 0b1110, 0b1110, 0b101),
|
|
|
kPMEVTYPER22_EL0 = encode(0b11, 0b011, 0b1110, 0b1110, 0b110),
|
|
|
kPMEVTYPER23_EL0 = encode(0b11, 0b011, 0b1110, 0b1110, 0b111),
|
|
|
kPMEVTYPER24_EL0 = encode(0b11, 0b011, 0b1110, 0b1111, 0b000),
|
|
|
kPMEVTYPER25_EL0 = encode(0b11, 0b011, 0b1110, 0b1111, 0b001),
|
|
|
kPMEVTYPER26_EL0 = encode(0b11, 0b011, 0b1110, 0b1111, 0b010),
|
|
|
kPMEVTYPER27_EL0 = encode(0b11, 0b011, 0b1110, 0b1111, 0b011),
|
|
|
kPMEVTYPER28_EL0 = encode(0b11, 0b011, 0b1110, 0b1111, 0b100),
|
|
|
kPMEVTYPER29_EL0 = encode(0b11, 0b011, 0b1110, 0b1111, 0b101),
|
|
|
kPMEVTYPER2_EL0 = encode(0b11, 0b011, 0b1110, 0b1100, 0b010),
|
|
|
kPMEVTYPER30_EL0 = encode(0b11, 0b011, 0b1110, 0b1111, 0b110),
|
|
|
kPMEVTYPER3_EL0 = encode(0b11, 0b011, 0b1110, 0b1100, 0b011),
|
|
|
kPMEVTYPER4_EL0 = encode(0b11, 0b011, 0b1110, 0b1100, 0b100),
|
|
|
kPMEVTYPER5_EL0 = encode(0b11, 0b011, 0b1110, 0b1100, 0b101),
|
|
|
kPMEVTYPER6_EL0 = encode(0b11, 0b011, 0b1110, 0b1100, 0b110),
|
|
|
kPMEVTYPER7_EL0 = encode(0b11, 0b011, 0b1110, 0b1100, 0b111),
|
|
|
kPMEVTYPER8_EL0 = encode(0b11, 0b011, 0b1110, 0b1101, 0b000),
|
|
|
kPMEVTYPER9_EL0 = encode(0b11, 0b011, 0b1110, 0b1101, 0b001),
|
|
|
kPMINTENCLR_EL1 = encode(0b11, 0b000, 0b1001, 0b1110, 0b010),
|
|
|
kPMINTENSET_EL1 = encode(0b11, 0b000, 0b1001, 0b1110, 0b001),
|
|
|
kPMMIR_EL1 = encode(0b11, 0b000, 0b1001, 0b1110, 0b110),
|
|
|
kPMOVSCLR_EL0 = encode(0b11, 0b011, 0b1001, 0b1100, 0b011),
|
|
|
kPMOVSSET_EL0 = encode(0b11, 0b011, 0b1001, 0b1110, 0b011),
|
|
|
kPMSCR_EL1 = encode(0b11, 0b000, 0b1001, 0b1001, 0b000),
|
|
|
kPMSCR_EL12 = encode(0b11, 0b101, 0b1001, 0b1001, 0b000),
|
|
|
kPMSCR_EL2 = encode(0b11, 0b100, 0b1001, 0b1001, 0b000),
|
|
|
kPMSELR_EL0 = encode(0b11, 0b011, 0b1001, 0b1100, 0b101),
|
|
|
kPMSEVFR_EL1 = encode(0b11, 0b000, 0b1001, 0b1001, 0b101),
|
|
|
kPMSFCR_EL1 = encode(0b11, 0b000, 0b1001, 0b1001, 0b100),
|
|
|
kPMSICR_EL1 = encode(0b11, 0b000, 0b1001, 0b1001, 0b010),
|
|
|
kPMSIDR_EL1 = encode(0b11, 0b000, 0b1001, 0b1001, 0b111),
|
|
|
kPMSIRR_EL1 = encode(0b11, 0b000, 0b1001, 0b1001, 0b011),
|
|
|
kPMSLATFR_EL1 = encode(0b11, 0b000, 0b1001, 0b1001, 0b110),
|
|
|
kPMSWINC_EL0 = encode(0b11, 0b011, 0b1001, 0b1100, 0b100),
|
|
|
kPMUSERENR_EL0 = encode(0b11, 0b011, 0b1001, 0b1110, 0b000),
|
|
|
kPMXEVCNTR_EL0 = encode(0b11, 0b011, 0b1001, 0b1101, 0b010),
|
|
|
kPMXEVTYPER_EL0 = encode(0b11, 0b011, 0b1001, 0b1101, 0b001),
|
|
|
kREVIDR_EL1 = encode(0b11, 0b000, 0b0000, 0b0000, 0b110),
|
|
|
kRGSR_EL1 = encode(0b11, 0b000, 0b0001, 0b0000, 0b101),
|
|
|
kRMR_EL1 = encode(0b11, 0b000, 0b1100, 0b0000, 0b010),
|
|
|
kRMR_EL2 = encode(0b11, 0b100, 0b1100, 0b0000, 0b010),
|
|
|
kRMR_EL3 = encode(0b11, 0b110, 0b1100, 0b0000, 0b010),
|
|
|
kRNDR = encode(0b11, 0b011, 0b0010, 0b0100, 0b000),
|
|
|
kRNDRRS = encode(0b11, 0b011, 0b0010, 0b0100, 0b001),
|
|
|
kRVBAR_EL1 = encode(0b11, 0b000, 0b1100, 0b0000, 0b001),
|
|
|
kRVBAR_EL2 = encode(0b11, 0b100, 0b1100, 0b0000, 0b001),
|
|
|
kRVBAR_EL3 = encode(0b11, 0b110, 0b1100, 0b0000, 0b001),
|
|
|
kSCR_EL3 = encode(0b11, 0b110, 0b0001, 0b0001, 0b000),
|
|
|
kSCTLR_EL1 = encode(0b11, 0b000, 0b0001, 0b0000, 0b000),
|
|
|
kSCTLR_EL12 = encode(0b11, 0b101, 0b0001, 0b0000, 0b000),
|
|
|
kSCTLR_EL2 = encode(0b11, 0b100, 0b0001, 0b0000, 0b000),
|
|
|
kSCTLR_EL3 = encode(0b11, 0b110, 0b0001, 0b0000, 0b000),
|
|
|
kSCXTNUM_EL0 = encode(0b11, 0b011, 0b1101, 0b0000, 0b111),
|
|
|
kSCXTNUM_EL1 = encode(0b11, 0b000, 0b1101, 0b0000, 0b111),
|
|
|
kSCXTNUM_EL12 = encode(0b11, 0b101, 0b1101, 0b0000, 0b111),
|
|
|
kSCXTNUM_EL2 = encode(0b11, 0b100, 0b1101, 0b0000, 0b111),
|
|
|
kSCXTNUM_EL3 = encode(0b11, 0b110, 0b1101, 0b0000, 0b111),
|
|
|
kSDER32_EL2 = encode(0b11, 0b100, 0b0001, 0b0011, 0b001),
|
|
|
kSDER32_EL3 = encode(0b11, 0b110, 0b0001, 0b0001, 0b001),
|
|
|
kSPSR_EL1 = encode(0b11, 0b000, 0b0100, 0b0000, 0b000),
|
|
|
kSPSR_EL12 = encode(0b11, 0b101, 0b0100, 0b0000, 0b000),
|
|
|
kSPSR_EL2 = encode(0b11, 0b100, 0b0100, 0b0000, 0b000),
|
|
|
kSPSR_EL3 = encode(0b11, 0b110, 0b0100, 0b0000, 0b000),
|
|
|
kSPSR_abt = encode(0b11, 0b100, 0b0100, 0b0011, 0b001),
|
|
|
kSPSR_fiq = encode(0b11, 0b100, 0b0100, 0b0011, 0b011),
|
|
|
kSPSR_irq = encode(0b11, 0b100, 0b0100, 0b0011, 0b000),
|
|
|
kSPSR_und = encode(0b11, 0b100, 0b0100, 0b0011, 0b010),
|
|
|
kSPSel = encode(0b11, 0b000, 0b0100, 0b0010, 0b000),
|
|
|
kSP_EL0 = encode(0b11, 0b000, 0b0100, 0b0001, 0b000),
|
|
|
kSP_EL1 = encode(0b11, 0b100, 0b0100, 0b0001, 0b000),
|
|
|
kSP_EL2 = encode(0b11, 0b110, 0b0100, 0b0001, 0b000),
|
|
|
kSSBS = encode(0b11, 0b011, 0b0100, 0b0010, 0b110),
|
|
|
kTCO = encode(0b11, 0b011, 0b0100, 0b0010, 0b111),
|
|
|
kTCR_EL1 = encode(0b11, 0b000, 0b0010, 0b0000, 0b010),
|
|
|
kTCR_EL12 = encode(0b11, 0b101, 0b0010, 0b0000, 0b010),
|
|
|
kTCR_EL2 = encode(0b11, 0b100, 0b0010, 0b0000, 0b010),
|
|
|
kTCR_EL3 = encode(0b11, 0b110, 0b0010, 0b0000, 0b010),
|
|
|
kTEECR32_EL1 = encode(0b10, 0b010, 0b0000, 0b0000, 0b000),
|
|
|
kTEEHBR32_EL1 = encode(0b10, 0b010, 0b0001, 0b0000, 0b000),
|
|
|
kTFSRE0_EL1 = encode(0b11, 0b000, 0b0101, 0b0110, 0b001),
|
|
|
kTFSR_EL1 = encode(0b11, 0b000, 0b0101, 0b0110, 0b000),
|
|
|
kTFSR_EL12 = encode(0b11, 0b101, 0b0101, 0b0110, 0b000),
|
|
|
kTFSR_EL2 = encode(0b11, 0b100, 0b0101, 0b0110, 0b000),
|
|
|
kTFSR_EL3 = encode(0b11, 0b110, 0b0101, 0b0110, 0b000),
|
|
|
kTPIDRRO_EL0 = encode(0b11, 0b011, 0b1101, 0b0000, 0b011),
|
|
|
kTPIDR_EL0 = encode(0b11, 0b011, 0b1101, 0b0000, 0b010),
|
|
|
kTPIDR_EL1 = encode(0b11, 0b000, 0b1101, 0b0000, 0b100),
|
|
|
kTPIDR_EL2 = encode(0b11, 0b100, 0b1101, 0b0000, 0b010),
|
|
|
kTPIDR_EL3 = encode(0b11, 0b110, 0b1101, 0b0000, 0b010),
|
|
|
kTRBBASER_EL1 = encode(0b11, 0b000, 0b1001, 0b1011, 0b010),
|
|
|
kTRBIDR_EL1 = encode(0b11, 0b000, 0b1001, 0b1011, 0b111),
|
|
|
kTRBLIMITR_EL1 = encode(0b11, 0b000, 0b1001, 0b1011, 0b000),
|
|
|
kTRBMAR_EL1 = encode(0b11, 0b000, 0b1001, 0b1011, 0b100),
|
|
|
kTRBPTR_EL1 = encode(0b11, 0b000, 0b1001, 0b1011, 0b001),
|
|
|
kTRBSR_EL1 = encode(0b11, 0b000, 0b1001, 0b1011, 0b011),
|
|
|
kTRBTRG_EL1 = encode(0b11, 0b000, 0b1001, 0b1011, 0b110),
|
|
|
kTRCACATR0 = encode(0b10, 0b001, 0b0010, 0b0000, 0b010),
|
|
|
kTRCACATR1 = encode(0b10, 0b001, 0b0010, 0b0010, 0b010),
|
|
|
kTRCACATR10 = encode(0b10, 0b001, 0b0010, 0b0100, 0b011),
|
|
|
kTRCACATR11 = encode(0b10, 0b001, 0b0010, 0b0110, 0b011),
|
|
|
kTRCACATR12 = encode(0b10, 0b001, 0b0010, 0b1000, 0b011),
|
|
|
kTRCACATR13 = encode(0b10, 0b001, 0b0010, 0b1010, 0b011),
|
|
|
kTRCACATR14 = encode(0b10, 0b001, 0b0010, 0b1100, 0b011),
|
|
|
kTRCACATR15 = encode(0b10, 0b001, 0b0010, 0b1110, 0b011),
|
|
|
kTRCACATR2 = encode(0b10, 0b001, 0b0010, 0b0100, 0b010),
|
|
|
kTRCACATR3 = encode(0b10, 0b001, 0b0010, 0b0110, 0b010),
|
|
|
kTRCACATR4 = encode(0b10, 0b001, 0b0010, 0b1000, 0b010),
|
|
|
kTRCACATR5 = encode(0b10, 0b001, 0b0010, 0b1010, 0b010),
|
|
|
kTRCACATR6 = encode(0b10, 0b001, 0b0010, 0b1100, 0b010),
|
|
|
kTRCACATR7 = encode(0b10, 0b001, 0b0010, 0b1110, 0b010),
|
|
|
kTRCACATR8 = encode(0b10, 0b001, 0b0010, 0b0000, 0b011),
|
|
|
kTRCACATR9 = encode(0b10, 0b001, 0b0010, 0b0010, 0b011),
|
|
|
kTRCACVR0 = encode(0b10, 0b001, 0b0010, 0b0000, 0b000),
|
|
|
kTRCACVR1 = encode(0b10, 0b001, 0b0010, 0b0010, 0b000),
|
|
|
kTRCACVR10 = encode(0b10, 0b001, 0b0010, 0b0100, 0b001),
|
|
|
kTRCACVR11 = encode(0b10, 0b001, 0b0010, 0b0110, 0b001),
|
|
|
kTRCACVR12 = encode(0b10, 0b001, 0b0010, 0b1000, 0b001),
|
|
|
kTRCACVR13 = encode(0b10, 0b001, 0b0010, 0b1010, 0b001),
|
|
|
kTRCACVR14 = encode(0b10, 0b001, 0b0010, 0b1100, 0b001),
|
|
|
kTRCACVR15 = encode(0b10, 0b001, 0b0010, 0b1110, 0b001),
|
|
|
kTRCACVR2 = encode(0b10, 0b001, 0b0010, 0b0100, 0b000),
|
|
|
kTRCACVR3 = encode(0b10, 0b001, 0b0010, 0b0110, 0b000),
|
|
|
kTRCACVR4 = encode(0b10, 0b001, 0b0010, 0b1000, 0b000),
|
|
|
kTRCACVR5 = encode(0b10, 0b001, 0b0010, 0b1010, 0b000),
|
|
|
kTRCACVR6 = encode(0b10, 0b001, 0b0010, 0b1100, 0b000),
|
|
|
kTRCACVR7 = encode(0b10, 0b001, 0b0010, 0b1110, 0b000),
|
|
|
kTRCACVR8 = encode(0b10, 0b001, 0b0010, 0b0000, 0b001),
|
|
|
kTRCACVR9 = encode(0b10, 0b001, 0b0010, 0b0010, 0b001),
|
|
|
kTRCAUTHSTATUS = encode(0b10, 0b001, 0b0111, 0b1110, 0b110),
|
|
|
kTRCAUXCTLR = encode(0b10, 0b001, 0b0000, 0b0110, 0b000),
|
|
|
kTRCBBCTLR = encode(0b10, 0b001, 0b0000, 0b1111, 0b000),
|
|
|
kTRCCCCTLR = encode(0b10, 0b001, 0b0000, 0b1110, 0b000),
|
|
|
kTRCCIDCCTLR0 = encode(0b10, 0b001, 0b0011, 0b0000, 0b010),
|
|
|
kTRCCIDCCTLR1 = encode(0b10, 0b001, 0b0011, 0b0001, 0b010),
|
|
|
kTRCCIDCVR0 = encode(0b10, 0b001, 0b0011, 0b0000, 0b000),
|
|
|
kTRCCIDCVR1 = encode(0b10, 0b001, 0b0011, 0b0010, 0b000),
|
|
|
kTRCCIDCVR2 = encode(0b10, 0b001, 0b0011, 0b0100, 0b000),
|
|
|
kTRCCIDCVR3 = encode(0b10, 0b001, 0b0011, 0b0110, 0b000),
|
|
|
kTRCCIDCVR4 = encode(0b10, 0b001, 0b0011, 0b1000, 0b000),
|
|
|
kTRCCIDCVR5 = encode(0b10, 0b001, 0b0011, 0b1010, 0b000),
|
|
|
kTRCCIDCVR6 = encode(0b10, 0b001, 0b0011, 0b1100, 0b000),
|
|
|
kTRCCIDCVR7 = encode(0b10, 0b001, 0b0011, 0b1110, 0b000),
|
|
|
kTRCCIDR0 = encode(0b10, 0b001, 0b0111, 0b1100, 0b111),
|
|
|
kTRCCIDR1 = encode(0b10, 0b001, 0b0111, 0b1101, 0b111),
|
|
|
kTRCCIDR2 = encode(0b10, 0b001, 0b0111, 0b1110, 0b111),
|
|
|
kTRCCIDR3 = encode(0b10, 0b001, 0b0111, 0b1111, 0b111),
|
|
|
kTRCCLAIMCLR = encode(0b10, 0b001, 0b0111, 0b1001, 0b110),
|
|
|
kTRCCLAIMSET = encode(0b10, 0b001, 0b0111, 0b1000, 0b110),
|
|
|
kTRCCNTCTLR0 = encode(0b10, 0b001, 0b0000, 0b0100, 0b101),
|
|
|
kTRCCNTCTLR1 = encode(0b10, 0b001, 0b0000, 0b0101, 0b101),
|
|
|
kTRCCNTCTLR2 = encode(0b10, 0b001, 0b0000, 0b0110, 0b101),
|
|
|
kTRCCNTCTLR3 = encode(0b10, 0b001, 0b0000, 0b0111, 0b101),
|
|
|
kTRCCNTRLDVR0 = encode(0b10, 0b001, 0b0000, 0b0000, 0b101),
|
|
|
kTRCCNTRLDVR1 = encode(0b10, 0b001, 0b0000, 0b0001, 0b101),
|
|
|
kTRCCNTRLDVR2 = encode(0b10, 0b001, 0b0000, 0b0010, 0b101),
|
|
|
kTRCCNTRLDVR3 = encode(0b10, 0b001, 0b0000, 0b0011, 0b101),
|
|
|
kTRCCNTVR0 = encode(0b10, 0b001, 0b0000, 0b1000, 0b101),
|
|
|
kTRCCNTVR1 = encode(0b10, 0b001, 0b0000, 0b1001, 0b101),
|
|
|
kTRCCNTVR2 = encode(0b10, 0b001, 0b0000, 0b1010, 0b101),
|
|
|
kTRCCNTVR3 = encode(0b10, 0b001, 0b0000, 0b1011, 0b101),
|
|
|
kTRCCONFIGR = encode(0b10, 0b001, 0b0000, 0b0100, 0b000),
|
|
|
kTRCDEVAFF0 = encode(0b10, 0b001, 0b0111, 0b1010, 0b110),
|
|
|
kTRCDEVAFF1 = encode(0b10, 0b001, 0b0111, 0b1011, 0b110),
|
|
|
kTRCDEVARCH = encode(0b10, 0b001, 0b0111, 0b1111, 0b110),
|
|
|
kTRCDEVID = encode(0b10, 0b001, 0b0111, 0b0010, 0b111),
|
|
|
kTRCDEVTYPE = encode(0b10, 0b001, 0b0111, 0b0011, 0b111),
|
|
|
kTRCDVCMR0 = encode(0b10, 0b001, 0b0010, 0b0000, 0b110),
|
|
|
kTRCDVCMR1 = encode(0b10, 0b001, 0b0010, 0b0100, 0b110),
|
|
|
kTRCDVCMR2 = encode(0b10, 0b001, 0b0010, 0b1000, 0b110),
|
|
|
kTRCDVCMR3 = encode(0b10, 0b001, 0b0010, 0b1100, 0b110),
|
|
|
kTRCDVCMR4 = encode(0b10, 0b001, 0b0010, 0b0000, 0b111),
|
|
|
kTRCDVCMR5 = encode(0b10, 0b001, 0b0010, 0b0100, 0b111),
|
|
|
kTRCDVCMR6 = encode(0b10, 0b001, 0b0010, 0b1000, 0b111),
|
|
|
kTRCDVCMR7 = encode(0b10, 0b001, 0b0010, 0b1100, 0b111),
|
|
|
kTRCDVCVR0 = encode(0b10, 0b001, 0b0010, 0b0000, 0b100),
|
|
|
kTRCDVCVR1 = encode(0b10, 0b001, 0b0010, 0b0100, 0b100),
|
|
|
kTRCDVCVR2 = encode(0b10, 0b001, 0b0010, 0b1000, 0b100),
|
|
|
kTRCDVCVR3 = encode(0b10, 0b001, 0b0010, 0b1100, 0b100),
|
|
|
kTRCDVCVR4 = encode(0b10, 0b001, 0b0010, 0b0000, 0b101),
|
|
|
kTRCDVCVR5 = encode(0b10, 0b001, 0b0010, 0b0100, 0b101),
|
|
|
kTRCDVCVR6 = encode(0b10, 0b001, 0b0010, 0b1000, 0b101),
|
|
|
kTRCDVCVR7 = encode(0b10, 0b001, 0b0010, 0b1100, 0b101),
|
|
|
kTRCEVENTCTL0R = encode(0b10, 0b001, 0b0000, 0b1000, 0b000),
|
|
|
kTRCEVENTCTL1R = encode(0b10, 0b001, 0b0000, 0b1001, 0b000),
|
|
|
kTRCEXTINSELR = encode(0b10, 0b001, 0b0000, 0b1000, 0b100),
|
|
|
kTRCEXTINSELR0 = encode(0b10, 0b001, 0b0000, 0b1000, 0b100),
|
|
|
kTRCEXTINSELR1 = encode(0b10, 0b001, 0b0000, 0b1001, 0b100),
|
|
|
kTRCEXTINSELR2 = encode(0b10, 0b001, 0b0000, 0b1010, 0b100),
|
|
|
kTRCEXTINSELR3 = encode(0b10, 0b001, 0b0000, 0b1011, 0b100),
|
|
|
kTRCIDR0 = encode(0b10, 0b001, 0b0000, 0b1000, 0b111),
|
|
|
kTRCIDR1 = encode(0b10, 0b001, 0b0000, 0b1001, 0b111),
|
|
|
kTRCIDR10 = encode(0b10, 0b001, 0b0000, 0b0010, 0b110),
|
|
|
kTRCIDR11 = encode(0b10, 0b001, 0b0000, 0b0011, 0b110),
|
|
|
kTRCIDR12 = encode(0b10, 0b001, 0b0000, 0b0100, 0b110),
|
|
|
kTRCIDR13 = encode(0b10, 0b001, 0b0000, 0b0101, 0b110),
|
|
|
kTRCIDR2 = encode(0b10, 0b001, 0b0000, 0b1010, 0b111),
|
|
|
kTRCIDR3 = encode(0b10, 0b001, 0b0000, 0b1011, 0b111),
|
|
|
kTRCIDR4 = encode(0b10, 0b001, 0b0000, 0b1100, 0b111),
|
|
|
kTRCIDR5 = encode(0b10, 0b001, 0b0000, 0b1101, 0b111),
|
|
|
kTRCIDR6 = encode(0b10, 0b001, 0b0000, 0b1110, 0b111),
|
|
|
kTRCIDR7 = encode(0b10, 0b001, 0b0000, 0b1111, 0b111),
|
|
|
kTRCIDR8 = encode(0b10, 0b001, 0b0000, 0b0000, 0b110),
|
|
|
kTRCIDR9 = encode(0b10, 0b001, 0b0000, 0b0001, 0b110),
|
|
|
kTRCIMSPEC0 = encode(0b10, 0b001, 0b0000, 0b0000, 0b111),
|
|
|
kTRCIMSPEC1 = encode(0b10, 0b001, 0b0000, 0b0001, 0b111),
|
|
|
kTRCIMSPEC2 = encode(0b10, 0b001, 0b0000, 0b0010, 0b111),
|
|
|
kTRCIMSPEC3 = encode(0b10, 0b001, 0b0000, 0b0011, 0b111),
|
|
|
kTRCIMSPEC4 = encode(0b10, 0b001, 0b0000, 0b0100, 0b111),
|
|
|
kTRCIMSPEC5 = encode(0b10, 0b001, 0b0000, 0b0101, 0b111),
|
|
|
kTRCIMSPEC6 = encode(0b10, 0b001, 0b0000, 0b0110, 0b111),
|
|
|
kTRCIMSPEC7 = encode(0b10, 0b001, 0b0000, 0b0111, 0b111),
|
|
|
kTRCITCTRL = encode(0b10, 0b001, 0b0111, 0b0000, 0b100),
|
|
|
kTRCLAR = encode(0b10, 0b001, 0b0111, 0b1100, 0b110),
|
|
|
kTRCLSR = encode(0b10, 0b001, 0b0111, 0b1101, 0b110),
|
|
|
kTRCOSLAR = encode(0b10, 0b001, 0b0001, 0b0000, 0b100),
|
|
|
kTRCOSLSR = encode(0b10, 0b001, 0b0001, 0b0001, 0b100),
|
|
|
kTRCPDCR = encode(0b10, 0b001, 0b0001, 0b0100, 0b100),
|
|
|
kTRCPDSR = encode(0b10, 0b001, 0b0001, 0b0101, 0b100),
|
|
|
kTRCPIDR0 = encode(0b10, 0b001, 0b0111, 0b1000, 0b111),
|
|
|
kTRCPIDR1 = encode(0b10, 0b001, 0b0111, 0b1001, 0b111),
|
|
|
kTRCPIDR2 = encode(0b10, 0b001, 0b0111, 0b1010, 0b111),
|
|
|
kTRCPIDR3 = encode(0b10, 0b001, 0b0111, 0b1011, 0b111),
|
|
|
kTRCPIDR4 = encode(0b10, 0b001, 0b0111, 0b0100, 0b111),
|
|
|
kTRCPIDR5 = encode(0b10, 0b001, 0b0111, 0b0101, 0b111),
|
|
|
kTRCPIDR6 = encode(0b10, 0b001, 0b0111, 0b0110, 0b111),
|
|
|
kTRCPIDR7 = encode(0b10, 0b001, 0b0111, 0b0111, 0b111),
|
|
|
kTRCPRGCTLR = encode(0b10, 0b001, 0b0000, 0b0001, 0b000),
|
|
|
kTRCPROCSELR = encode(0b10, 0b001, 0b0000, 0b0010, 0b000),
|
|
|
kTRCQCTLR = encode(0b10, 0b001, 0b0000, 0b0001, 0b001),
|
|
|
kTRCRSCTLR10 = encode(0b10, 0b001, 0b0001, 0b1010, 0b000),
|
|
|
kTRCRSCTLR11 = encode(0b10, 0b001, 0b0001, 0b1011, 0b000),
|
|
|
kTRCRSCTLR12 = encode(0b10, 0b001, 0b0001, 0b1100, 0b000),
|
|
|
kTRCRSCTLR13 = encode(0b10, 0b001, 0b0001, 0b1101, 0b000),
|
|
|
kTRCRSCTLR14 = encode(0b10, 0b001, 0b0001, 0b1110, 0b000),
|
|
|
kTRCRSCTLR15 = encode(0b10, 0b001, 0b0001, 0b1111, 0b000),
|
|
|
kTRCRSCTLR16 = encode(0b10, 0b001, 0b0001, 0b0000, 0b001),
|
|
|
kTRCRSCTLR17 = encode(0b10, 0b001, 0b0001, 0b0001, 0b001),
|
|
|
kTRCRSCTLR18 = encode(0b10, 0b001, 0b0001, 0b0010, 0b001),
|
|
|
kTRCRSCTLR19 = encode(0b10, 0b001, 0b0001, 0b0011, 0b001),
|
|
|
kTRCRSCTLR2 = encode(0b10, 0b001, 0b0001, 0b0010, 0b000),
|
|
|
kTRCRSCTLR20 = encode(0b10, 0b001, 0b0001, 0b0100, 0b001),
|
|
|
kTRCRSCTLR21 = encode(0b10, 0b001, 0b0001, 0b0101, 0b001),
|
|
|
kTRCRSCTLR22 = encode(0b10, 0b001, 0b0001, 0b0110, 0b001),
|
|
|
kTRCRSCTLR23 = encode(0b10, 0b001, 0b0001, 0b0111, 0b001),
|
|
|
kTRCRSCTLR24 = encode(0b10, 0b001, 0b0001, 0b1000, 0b001),
|
|
|
kTRCRSCTLR25 = encode(0b10, 0b001, 0b0001, 0b1001, 0b001),
|
|
|
kTRCRSCTLR26 = encode(0b10, 0b001, 0b0001, 0b1010, 0b001),
|
|
|
kTRCRSCTLR27 = encode(0b10, 0b001, 0b0001, 0b1011, 0b001),
|
|
|
kTRCRSCTLR28 = encode(0b10, 0b001, 0b0001, 0b1100, 0b001),
|
|
|
kTRCRSCTLR29 = encode(0b10, 0b001, 0b0001, 0b1101, 0b001),
|
|
|
kTRCRSCTLR3 = encode(0b10, 0b001, 0b0001, 0b0011, 0b000),
|
|
|
kTRCRSCTLR30 = encode(0b10, 0b001, 0b0001, 0b1110, 0b001),
|
|
|
kTRCRSCTLR31 = encode(0b10, 0b001, 0b0001, 0b1111, 0b001),
|
|
|
kTRCRSCTLR4 = encode(0b10, 0b001, 0b0001, 0b0100, 0b000),
|
|
|
kTRCRSCTLR5 = encode(0b10, 0b001, 0b0001, 0b0101, 0b000),
|
|
|
kTRCRSCTLR6 = encode(0b10, 0b001, 0b0001, 0b0110, 0b000),
|
|
|
kTRCRSCTLR7 = encode(0b10, 0b001, 0b0001, 0b0111, 0b000),
|
|
|
kTRCRSCTLR8 = encode(0b10, 0b001, 0b0001, 0b1000, 0b000),
|
|
|
kTRCRSCTLR9 = encode(0b10, 0b001, 0b0001, 0b1001, 0b000),
|
|
|
kTRCRSR = encode(0b10, 0b001, 0b0000, 0b1010, 0b000),
|
|
|
kTRCSEQEVR0 = encode(0b10, 0b001, 0b0000, 0b0000, 0b100),
|
|
|
kTRCSEQEVR1 = encode(0b10, 0b001, 0b0000, 0b0001, 0b100),
|
|
|
kTRCSEQEVR2 = encode(0b10, 0b001, 0b0000, 0b0010, 0b100),
|
|
|
kTRCSEQRSTEVR = encode(0b10, 0b001, 0b0000, 0b0110, 0b100),
|
|
|
kTRCSEQSTR = encode(0b10, 0b001, 0b0000, 0b0111, 0b100),
|
|
|
kTRCSSCCR0 = encode(0b10, 0b001, 0b0001, 0b0000, 0b010),
|
|
|
kTRCSSCCR1 = encode(0b10, 0b001, 0b0001, 0b0001, 0b010),
|
|
|
kTRCSSCCR2 = encode(0b10, 0b001, 0b0001, 0b0010, 0b010),
|
|
|
kTRCSSCCR3 = encode(0b10, 0b001, 0b0001, 0b0011, 0b010),
|
|
|
kTRCSSCCR4 = encode(0b10, 0b001, 0b0001, 0b0100, 0b010),
|
|
|
kTRCSSCCR5 = encode(0b10, 0b001, 0b0001, 0b0101, 0b010),
|
|
|
kTRCSSCCR6 = encode(0b10, 0b001, 0b0001, 0b0110, 0b010),
|
|
|
kTRCSSCCR7 = encode(0b10, 0b001, 0b0001, 0b0111, 0b010),
|
|
|
kTRCSSCSR0 = encode(0b10, 0b001, 0b0001, 0b1000, 0b010),
|
|
|
kTRCSSCSR1 = encode(0b10, 0b001, 0b0001, 0b1001, 0b010),
|
|
|
kTRCSSCSR2 = encode(0b10, 0b001, 0b0001, 0b1010, 0b010),
|
|
|
kTRCSSCSR3 = encode(0b10, 0b001, 0b0001, 0b1011, 0b010),
|
|
|
kTRCSSCSR4 = encode(0b10, 0b001, 0b0001, 0b1100, 0b010),
|
|
|
kTRCSSCSR5 = encode(0b10, 0b001, 0b0001, 0b1101, 0b010),
|
|
|
kTRCSSCSR6 = encode(0b10, 0b001, 0b0001, 0b1110, 0b010),
|
|
|
kTRCSSCSR7 = encode(0b10, 0b001, 0b0001, 0b1111, 0b010),
|
|
|
kTRCSSPCICR0 = encode(0b10, 0b001, 0b0001, 0b0000, 0b011),
|
|
|
kTRCSSPCICR1 = encode(0b10, 0b001, 0b0001, 0b0001, 0b011),
|
|
|
kTRCSSPCICR2 = encode(0b10, 0b001, 0b0001, 0b0010, 0b011),
|
|
|
kTRCSSPCICR3 = encode(0b10, 0b001, 0b0001, 0b0011, 0b011),
|
|
|
kTRCSSPCICR4 = encode(0b10, 0b001, 0b0001, 0b0100, 0b011),
|
|
|
kTRCSSPCICR5 = encode(0b10, 0b001, 0b0001, 0b0101, 0b011),
|
|
|
kTRCSSPCICR6 = encode(0b10, 0b001, 0b0001, 0b0110, 0b011),
|
|
|
kTRCSSPCICR7 = encode(0b10, 0b001, 0b0001, 0b0111, 0b011),
|
|
|
kTRCSTALLCTLR = encode(0b10, 0b001, 0b0000, 0b1011, 0b000),
|
|
|
kTRCSTATR = encode(0b10, 0b001, 0b0000, 0b0011, 0b000),
|
|
|
kTRCSYNCPR = encode(0b10, 0b001, 0b0000, 0b1101, 0b000),
|
|
|
kTRCTRACEIDR = encode(0b10, 0b001, 0b0000, 0b0000, 0b001),
|
|
|
kTRCTSCTLR = encode(0b10, 0b001, 0b0000, 0b1100, 0b000),
|
|
|
kTRCVDARCCTLR = encode(0b10, 0b001, 0b0000, 0b1010, 0b010),
|
|
|
kTRCVDCTLR = encode(0b10, 0b001, 0b0000, 0b1000, 0b010),
|
|
|
kTRCVDSACCTLR = encode(0b10, 0b001, 0b0000, 0b1001, 0b010),
|
|
|
kTRCVICTLR = encode(0b10, 0b001, 0b0000, 0b0000, 0b010),
|
|
|
kTRCVIIECTLR = encode(0b10, 0b001, 0b0000, 0b0001, 0b010),
|
|
|
kTRCVIPCSSCTLR = encode(0b10, 0b001, 0b0000, 0b0011, 0b010),
|
|
|
kTRCVISSCTLR = encode(0b10, 0b001, 0b0000, 0b0010, 0b010),
|
|
|
kTRCVMIDCCTLR0 = encode(0b10, 0b001, 0b0011, 0b0010, 0b010),
|
|
|
kTRCVMIDCCTLR1 = encode(0b10, 0b001, 0b0011, 0b0011, 0b010),
|
|
|
kTRCVMIDCVR0 = encode(0b10, 0b001, 0b0011, 0b0000, 0b001),
|
|
|
kTRCVMIDCVR1 = encode(0b10, 0b001, 0b0011, 0b0010, 0b001),
|
|
|
kTRCVMIDCVR2 = encode(0b10, 0b001, 0b0011, 0b0100, 0b001),
|
|
|
kTRCVMIDCVR3 = encode(0b10, 0b001, 0b0011, 0b0110, 0b001),
|
|
|
kTRCVMIDCVR4 = encode(0b10, 0b001, 0b0011, 0b1000, 0b001),
|
|
|
kTRCVMIDCVR5 = encode(0b10, 0b001, 0b0011, 0b1010, 0b001),
|
|
|
kTRCVMIDCVR6 = encode(0b10, 0b001, 0b0011, 0b1100, 0b001),
|
|
|
kTRCVMIDCVR7 = encode(0b10, 0b001, 0b0011, 0b1110, 0b001),
|
|
|
kTRFCR_EL1 = encode(0b11, 0b000, 0b0001, 0b0010, 0b001),
|
|
|
kTRFCR_EL12 = encode(0b11, 0b101, 0b0001, 0b0010, 0b001),
|
|
|
kTRFCR_EL2 = encode(0b11, 0b100, 0b0001, 0b0010, 0b001),
|
|
|
kTTBR0_EL1 = encode(0b11, 0b000, 0b0010, 0b0000, 0b000),
|
|
|
kTTBR0_EL12 = encode(0b11, 0b101, 0b0010, 0b0000, 0b000),
|
|
|
kTTBR0_EL2 = encode(0b11, 0b100, 0b0010, 0b0000, 0b000),
|
|
|
kTTBR0_EL3 = encode(0b11, 0b110, 0b0010, 0b0000, 0b000),
|
|
|
kTTBR1_EL1 = encode(0b11, 0b000, 0b0010, 0b0000, 0b001),
|
|
|
kTTBR1_EL12 = encode(0b11, 0b101, 0b0010, 0b0000, 0b001),
|
|
|
kTTBR1_EL2 = encode(0b11, 0b100, 0b0010, 0b0000, 0b001),
|
|
|
kUAO = encode(0b11, 0b000, 0b0100, 0b0010, 0b100),
|
|
|
kVBAR_EL1 = encode(0b11, 0b000, 0b1100, 0b0000, 0b000),
|
|
|
kVBAR_EL12 = encode(0b11, 0b101, 0b1100, 0b0000, 0b000),
|
|
|
kVBAR_EL2 = encode(0b11, 0b100, 0b1100, 0b0000, 0b000),
|
|
|
kVBAR_EL3 = encode(0b11, 0b110, 0b1100, 0b0000, 0b000),
|
|
|
kVDISR_EL2 = encode(0b11, 0b100, 0b1100, 0b0001, 0b001),
|
|
|
kVMPIDR_EL2 = encode(0b11, 0b100, 0b0000, 0b0000, 0b101),
|
|
|
kVNCR_EL2 = encode(0b11, 0b100, 0b0010, 0b0010, 0b000),
|
|
|
kVPIDR_EL2 = encode(0b11, 0b100, 0b0000, 0b0000, 0b000),
|
|
|
kVSESR_EL2 = encode(0b11, 0b100, 0b0101, 0b0010, 0b011),
|
|
|
kVSTCR_EL2 = encode(0b11, 0b100, 0b0010, 0b0110, 0b010),
|
|
|
kVSTTBR_EL2 = encode(0b11, 0b100, 0b0010, 0b0110, 0b000),
|
|
|
kVTCR_EL2 = encode(0b11, 0b100, 0b0010, 0b0001, 0b010),
|
|
|
kVTTBR_EL2 = encode(0b11, 0b100, 0b0010, 0b0001, 0b000),
|
|
|
kZCR_EL1 = encode(0b11, 0b000, 0b0001, 0b0010, 0b000),
|
|
|
kZCR_EL12 = encode(0b11, 0b101, 0b0001, 0b0010, 0b000),
|
|
|
kZCR_EL2 = encode(0b11, 0b100, 0b0001, 0b0010, 0b000),
|
|
|
kZCR_EL3 = encode(0b11, 0b110, 0b0001, 0b0010, 0b000)
|
|
|
};
|
|
|
};
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
ASMJIT_END_SUB_NAMESPACE
|
|
|
|
|
|
#endif
|
|
|
|