Arm: Allow version strings in the triplet regexp
On Arm, the OS may use the full version string for the arch name when installing the compiler, for example armv7hl-redhat-linux-gnueabi-gcc. Implement gdbarch_gnu_triplet_regexp for Arm to allow this to be detected. Ensure that other Arm targets (eg iwmmxt) are not affected. This fixes the compile/ set of tests on those systems. gdb/ChangeLog: 2019-06-26 Alan Hayward <alan.hayward@arm.com> * arm-tdep.c (arm_gnu_triplet_regexp): New function. (arm_gdbarch_init): Add arm_gnu_triplet_regexp.
This commit is contained in:
parent
8af58ffe5d
commit
3426ae5760
|
@ -1,3 +1,8 @@
|
|||
2019-06-26 Alan Hayward <alan.hayward@arm.com>
|
||||
|
||||
* arm-tdep.c (arm_gnu_triplet_regexp): New function.
|
||||
(arm_gdbarch_init): Add arm_gnu_triplet_regexp.
|
||||
|
||||
2019-06-25 Simon Marchi <simon.marchi@polymtl.ca>
|
||||
|
||||
* arm-tdep.c (struct arm_per_objfile) <section_maps_sorted>: New
|
||||
|
|
|
@ -8831,7 +8831,17 @@ arm_code_of_frame_writable (struct gdbarch *gdbarch, struct frame_info *frame)
|
|||
return 1;
|
||||
}
|
||||
|
||||
|
||||
/* Implement gdbarch_gnu_triplet_regexp. If the arch name is arm then allow it
|
||||
to be postfixed by a version (eg armv7hl). */
|
||||
|
||||
static const char *
|
||||
arm_gnu_triplet_regexp (struct gdbarch *gdbarch)
|
||||
{
|
||||
if (strcmp (gdbarch_bfd_arch_info (gdbarch)->arch_name, "arm") == 0)
|
||||
return "arm(v[^- ]*)?";
|
||||
return gdbarch_bfd_arch_info (gdbarch)->arch_name;
|
||||
}
|
||||
|
||||
/* Initialize the current architecture based on INFO. If possible,
|
||||
re-use an architecture from ARCHES, which is a list of
|
||||
architectures already created during this debugging session.
|
||||
|
@ -9433,6 +9443,8 @@ arm_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
|||
set_gdbarch_disassembler_options (gdbarch, &arm_disassembler_options);
|
||||
set_gdbarch_valid_disassembler_options (gdbarch, disassembler_options_arm ());
|
||||
|
||||
set_gdbarch_gnu_triplet_regexp (gdbarch, arm_gnu_triplet_regexp);
|
||||
|
||||
return gdbarch;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue