Add an arm-tls feature which includes the tpidruro register from CP15.

This commit is contained in:
John Baldwin
2022-05-03 16:05:10 -07:00
parent 40c23d8803
commit 92d48a1e4e
12 changed files with 66 additions and 17 deletions

View File

@@ -19,6 +19,7 @@
#include "aarch32.h"
#include "../features/arm/arm-core.c"
#include "../features/arm/arm-tls.c"
#include "../features/arm/arm-vfpv3.c"
/* See aarch32.h. */
@@ -38,6 +39,7 @@ aarch32_create_target_description ()
/* Create a vfpv3 feature, then a blank NEON feature. */
regnum = create_feature_arm_arm_vfpv3 (tdesc.get (), regnum);
tdesc_create_feature (tdesc.get (), "org.gnu.gdb.arm.neon");
regnum = create_feature_arm_arm_tls (tdesc.get (), regnum);
return tdesc.release ();
}

View File

@@ -22,6 +22,7 @@
#include "arm.h"
#include "../features/arm/arm-core.c"
#include "../features/arm/arm-tls.c"
#include "../features/arm/arm-vfpv2.c"
#include "../features/arm/arm-vfpv3.c"
#include "../features/arm/xscale-iwmmxt.c"
@@ -374,7 +375,7 @@ shifted_reg_val (struct regcache *regcache, unsigned long inst,
/* See arch/arm.h. */
target_desc *
arm_create_target_description (arm_fp_type fp_type)
arm_create_target_description (arm_fp_type fp_type, bool tls)
{
target_desc_up tdesc = allocate_target_description ();
@@ -410,6 +411,9 @@ arm_create_target_description (arm_fp_type fp_type)
error (_("Invalid Arm FP type: %d"), fp_type);
}
if (tls)
regnum = create_feature_arm_arm_tls (tdesc.get (), regnum);
return tdesc.release ();
}

View File

@@ -207,7 +207,7 @@ unsigned long shifted_reg_val (struct regcache *regcache,
/* Create an Arm target description with the given FP hardware type. */
target_desc *arm_create_target_description (arm_fp_type fp_type);
target_desc *arm_create_target_description (arm_fp_type fp_type, bool tls);
/* Create an Arm M-profile target description with the given hardware type. */