[2/7] Fixes for aarch64-linux core file support
Commit Message
Updated after regset rework pushed upstream.
gdb:
2014-09-18 Omair Javaid <omair.javaid@linaro.org>
* aarch64-linux-tdep.c (aarch64_linux_init_abi): Install AArch64
register note sections.
(struct core_regset_section aarch64_linux_regset_sections[]): Declare
AArch64 register note sections.
---
gdb/aarch64-linux-tdep.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
Comments
On 18 September 2014 04:36, Omair Javaid <omair.javaid@linaro.org> wrote:
> Updated after regset rework pushed upstream.
>
> gdb:
>
> 2014-09-18 Omair Javaid <omair.javaid@linaro.org>
>
> * aarch64-linux-tdep.c (aarch64_linux_init_abi): Install AArch64
> register note sections.
> (struct core_regset_section aarch64_linux_regset_sections[]): Declare
> AArch64 register note sections.
> ---
> gdb/aarch64-linux-tdep.c | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/gdb/aarch64-linux-tdep.c b/gdb/aarch64-linux-tdep.c
> index 6377977..e5565a8 100644
> --- a/gdb/aarch64-linux-tdep.c
> +++ b/gdb/aarch64-linux-tdep.c
> @@ -231,6 +231,15 @@ aarch64_linux_regset_from_core_section (struct gdbarch *gdbarch,
> return NULL;
> }
>
> +/* Core file register set sections. */
> +
> +static struct core_regset_section aarch64_linux_regset_sections[] =
> +{
> + { ".reg", AARCH64_LINUX_SIZEOF_GREGSET, "general-purpose" },
> + { ".reg2", AARCH64_LINUX_SIZEOF_FPREGSET, "floating-point" },
> + { NULL, 0}
> +};
> +
> /* Implementation of `gdbarch_stap_is_single_operand', as defined in
> gdbarch.h. */
>
> @@ -376,6 +385,9 @@ aarch64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
> /* Enable longjmp. */
> tdep->jb_pc = 11;
>
> + /* Install supported register note sections. */
> + set_gdbarch_core_regset_sections (gdbarch, aarch64_linux_regset_sections);
> +
> set_gdbarch_regset_from_core_section (gdbarch,
> aarch64_linux_regset_from_core_section);
>
> --
> 1.9.1
>
ping!
On 14/10/2014 17:49, Omair Javaid wrote:
> On 18 September 2014 04:36, Omair Javaid <omair.javaid@linaro.org> wrote:
>> Updated after regset rework pushed upstream.
>>
>> gdb:
>>
>> 2014-09-18 Omair Javaid <omair.javaid@linaro.org>
>>
>> * aarch64-linux-tdep.c (aarch64_linux_init_abi): Install AArch64
>> register note sections.
>> (struct core_regset_section aarch64_linux_regset_sections[]): Declare
>> AArch64 register note sections.
>> ---
>> gdb/aarch64-linux-tdep.c | 12 ++++++++++++
>> 1 file changed, 12 insertions(+)
>>
>> diff --git a/gdb/aarch64-linux-tdep.c b/gdb/aarch64-linux-tdep.c
>> index 6377977..e5565a8 100644
>> --- a/gdb/aarch64-linux-tdep.c
>> +++ b/gdb/aarch64-linux-tdep.c
>> @@ -231,6 +231,15 @@ aarch64_linux_regset_from_core_section (struct gdbarch *gdbarch,
>> return NULL;
>> }
>>
>> +/* Core file register set sections. */
>> +
>> +static struct core_regset_section aarch64_linux_regset_sections[] =
>> +{
>> + { ".reg", AARCH64_LINUX_SIZEOF_GREGSET, "general-purpose" },
>> + { ".reg2", AARCH64_LINUX_SIZEOF_FPREGSET, "floating-point" },
>> + { NULL, 0}
>> +};
>> +
>> /* Implementation of `gdbarch_stap_is_single_operand', as defined in
>> gdbarch.h. */
>>
>> @@ -376,6 +385,9 @@ aarch64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
>> /* Enable longjmp. */
>> tdep->jb_pc = 11;
>>
>> + /* Install supported register note sections. */
>> + set_gdbarch_core_regset_sections (gdbarch, aarch64_linux_regset_sections);
>> +
>> set_gdbarch_regset_from_core_section (gdbarch,
>> aarch64_linux_regset_from_core_section);
>>
>> --
>> 1.9.1
>>
>
> ping!
>
ping!
@@ -231,6 +231,15 @@ aarch64_linux_regset_from_core_section (struct gdbarch *gdbarch,
return NULL;
}
+/* Core file register set sections. */
+
+static struct core_regset_section aarch64_linux_regset_sections[] =
+{
+ { ".reg", AARCH64_LINUX_SIZEOF_GREGSET, "general-purpose" },
+ { ".reg2", AARCH64_LINUX_SIZEOF_FPREGSET, "floating-point" },
+ { NULL, 0}
+};
+
/* Implementation of `gdbarch_stap_is_single_operand', as defined in
gdbarch.h. */
@@ -376,6 +385,9 @@ aarch64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
/* Enable longjmp. */
tdep->jb_pc = 11;
+ /* Install supported register note sections. */
+ set_gdbarch_core_regset_sections (gdbarch, aarch64_linux_regset_sections);
+
set_gdbarch_regset_from_core_section (gdbarch,
aarch64_linux_regset_from_core_section);