This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH v2 13/13] IA64 Linux: Define regset structures.


Andreas Arnez wrote:

> +static const struct regcache_map_entry ia64_linux_gregmap[] =
> +  {
> +    { 32, IA64_GR0_REGNUM },	/* r0 ... r31 */
> +    { 8, REGCACHE_MAP_SKIP_BYTES }, /* FIXME: NAT collection bits? */
> +    { 1, IA64_PR_REGNUM },
> +    { 8, IA64_BR0_REGNUM },	/* b0 ... b7 */
> +    { 1, IA64_IP_REGNUM },
> +    { 1, IA64_CFM_REGNUM },
> +    { 1, IA64_PSR_REGNUM },
> +    { 1, IA64_RSC_REGNUM },
> +    { 1, IA64_BSP_REGNUM },
> +    { 1, IA64_BSPSTORE_REGNUM },
> +    { 1, IA64_RNAT_REGNUM },
> +    { 1, IA64_CCV_REGNUM },
> +    { 1, IA64_UNAT_REGNUM },
> +    { 1, IA64_FPSR_REGNUM },
> +    { 1, IA64_PFS_REGNUM },
> +    { 1, IA64_LC_REGNUM },
> +    { 1, IA64_EC_REGNUM },
> +    { 0 }
> +  };
> +
> +#define IA64_LINUX_GREGS_SIZE (55 * 8)

If I'm reading the kernel sources correctly, the core file note will actually
contain 128 register slots.

> +static const struct regcache_map_entry ia64_linux_fpregmap[] =
> +  {
> +    { 128, IA64_FR0_REGNUM },	/* f0 ... f127 */
> +    { 0 }
> +  };
> +
> +#define IA64_LINUX_FPREGS_SIZE (128 * 8)

The size of one FP register should be 16 bytes, not 8.

Bye,
Ulrich

-- 
  Dr. Ulrich Weigand
  GNU/Linux compilers and toolchain
  Ulrich.Weigand@de.ibm.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]