diff options
Diffstat (limited to 'gdb/arch')
-rw-r--r-- | gdb/arch/arm.c | 7 | ||||
-rw-r--r-- | gdb/arch/arm.h | 3 |
2 files changed, 10 insertions, 0 deletions
diff --git a/gdb/arch/arm.c b/gdb/arch/arm.c index 7407c4a..a18b38b 100644 --- a/gdb/arch/arm.c +++ b/gdb/arch/arm.c @@ -27,6 +27,7 @@ #include "../features/arm/xscale-iwmmxt.c" #include "../features/arm/arm-m-profile.c" #include "../features/arm/arm-m-profile-with-fpa.c" +#include "../features/arm/arm-m-profile-mve.c" /* See arm.h. */ @@ -439,6 +440,12 @@ arm_create_mprofile_target_description (arm_m_profile_type m_type) regnum = create_feature_arm_arm_m_profile_with_fpa (tdesc, regnum); break; + case ARM_M_TYPE_MVE: + regnum = create_feature_arm_arm_m_profile (tdesc, regnum); + regnum = create_feature_arm_arm_vfpv2 (tdesc, regnum); + regnum = create_feature_arm_arm_m_profile_mve (tdesc, regnum); + break; + default: error (_("Invalid Arm M type: %d"), m_type); } diff --git a/gdb/arch/arm.h b/gdb/arch/arm.h index f6a155d..eabcb43 100644 --- a/gdb/arch/arm.h +++ b/gdb/arch/arm.h @@ -59,6 +59,8 @@ enum gdb_regnum { /* Register count constants. */ enum arm_register_counts { + /* Number of Q registers for MVE. */ + ARM_MVE_NUM_Q_REGS = 8, /* Number of argument registers. */ ARM_NUM_ARG_REGS = 4, /* Number of floating point argument registers. */ @@ -89,6 +91,7 @@ enum arm_m_profile_type { ARM_M_TYPE_M_PROFILE, ARM_M_TYPE_VFP_D16, ARM_M_TYPE_WITH_FPA, + ARM_M_TYPE_MVE, ARM_M_TYPE_INVALID }; |