OSDN Git Service

ARC: Implement native GDB requirements in procfs.h
authorAnton Kolesov <Anton.Kolesov@synopsys.com>
Thu, 26 Jun 2014 06:03:35 +0000 (11:33 +0530)
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Tue, 22 Jul 2014 07:50:50 +0000 (09:50 +0200)
Native GDB requires elf_fpregset_t to be defined, even if floating point
registers are absent. In this case we use empty structure. Additionally we
redefined prfpregset_t to use this new type.

And there has been an error: it was defined that user_regs_struct has 20
registers, while it has 40.

Signed-off-by: Anton Kolesov <Anton.Kolesov@synopsys.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
libc/sysdeps/linux/arc/sys/procfs.h

index 44676e1..a9e375b 100755 (executable)
@@ -30,8 +30,9 @@ typedef unsigned long elf_greg_t;
    user_regs' directly in the typedef, but tradition says that
    the register set is an array, which does have some peculiar
    semantics, so leave it that way.  */
-#define ELF_NGREG 20
+#define ELF_NGREG 40
 typedef elf_greg_t elf_gregset_t[ELF_NGREG];
+typedef struct { } elf_fpregset_t;
 
 /* Signal info.  */
 struct elf_siginfo
@@ -93,7 +94,7 @@ typedef void *psaddr_t;
 
 /* Register sets.  Linux has different names.  */
 typedef elf_gregset_t prgregset_t;
-typedef elf_gregset_t prfpregset_t;
+typedef elf_fpregset_t prfpregset_t;
 
 /* We don't have any differences between processes and threads,
    therefore have only one PID type.  */