From b7b8b676202eaeced392dea06e2c3fcc4bd11aec Mon Sep 17 00:00:00 2001 From: Lioncash Date: Mon, 6 Apr 2015 12:43:23 -0400 Subject: Move CP15 enum definitions into their own enum. Also gets rid of preprocessor mumbo-jumbo --- src/core/arm/skyeye_common/arm_regformat.h | 40 ++++++++++++++---------------- 1 file changed, 18 insertions(+), 22 deletions(-) (limited to 'src/core/arm/skyeye_common/arm_regformat.h') diff --git a/src/core/arm/skyeye_common/arm_regformat.h b/src/core/arm/skyeye_common/arm_regformat.h index c232376e..d125dc2f 100644 --- a/src/core/arm/skyeye_common/arm_regformat.h +++ b/src/core/arm/skyeye_common/arm_regformat.h @@ -51,17 +51,23 @@ enum { EXCLUSIVE_STATE, EXCLUSIVE_RESULT, + // VFP registers + VFP_BASE, + VFP_FPSID = VFP_BASE, + VFP_FPSCR, + VFP_FPEXC, + + MAX_REG_NUM, +}; + +enum CP15Register { // c0 - Information registers - CP15_BASE, - CP15_C0 = CP15_BASE, - CP15_C0_C0 = CP15_C0, - CP15_MAIN_ID = CP15_C0_C0, + CP15_MAIN_ID, CP15_CACHE_TYPE, CP15_TCM_STATUS, CP15_TLB_TYPE, CP15_CPU_ID, - CP15_C0_C1, - CP15_PROCESSOR_FEATURE_0 = CP15_C0_C1, + CP15_PROCESSOR_FEATURE_0, CP15_PROCESSOR_FEATURE_1, CP15_DEBUG_FEATURE_0, CP15_AUXILIARY_FEATURE_0, @@ -69,24 +75,19 @@ enum { CP15_MEMORY_MODEL_FEATURE_1, CP15_MEMORY_MODEL_FEATURE_2, CP15_MEMORY_MODEL_FEATURE_3, - CP15_C0_C2, - CP15_ISA_FEATURE_0 = CP15_C0_C2, + CP15_ISA_FEATURE_0, CP15_ISA_FEATURE_1, CP15_ISA_FEATURE_2, CP15_ISA_FEATURE_3, CP15_ISA_FEATURE_4, // c1 - Control registers - CP15_C1_C0, - CP15_CONTROL = CP15_C1_C0, + CP15_CONTROL, CP15_AUXILIARY_CONTROL, CP15_COPROCESSOR_ACCESS_CONTROL, // c2 - Translation table registers - CP15_C2, - CP15_C2_C0 = CP15_C2, - CP15_TRANSLATION_BASE = CP15_C2_C0, - CP15_TRANSLATION_BASE_TABLE_0 = CP15_TRANSLATION_BASE, + CP15_TRANSLATION_BASE_TABLE_0, CP15_TRANSLATION_BASE_TABLE_1, CP15_TRANSLATION_BASE_CONTROL, CP15_DOMAIN_ACCESS_CONTROL, @@ -171,14 +172,9 @@ enum { CP15_TLB_FAULT_ADDR, CP15_TLB_FAULT_STATUS, - // VFP registers - VFP_BASE, - VFP_FPSID = VFP_BASE, - VFP_FPSCR, - VFP_FPEXC, - - MAX_REG_NUM, + // Not an actual register. + // All registers should be defined above this. + CP15_REGISTER_COUNT, }; -#define CP15(idx) (idx - CP15_BASE) #define VFP_OFFSET(x) (x - VFP_BASE) -- cgit v1.2.3