This is the mail archive of the gdb-patches@sources.redhat.com 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: [RFA] arm linux nat and regcache


Scott Bambrough wrote:
> 
> This is ok to commit.

Committed.

> 
> -----Original Message-----
> From: Michael Snyder [mailto:msnyder@cygnus.com]
> Sent: January 7, 2002 21:28
> To: gdb-patches@sources.redhat.com
> Cc: drow@mvista.com; kevinb@redhat.com
> Subject: [RFA] arm linux nat and regcache
> 
> 2002-01-07  Michael Snyder  <msnyder@redhat.com>
> 
>         * arm-linux-nat.c: Remove references to regcache.c internal data
>         (registers[] and register_valid[]).
> 
> Index: arm-linux-nat.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/arm-linux-nat.c,v
> retrieving revision 1.14
> diff -p -r1.14 arm-linux-nat.c
> *** arm-linux-nat.c     2001/11/17 20:31:18     1.14
> --- arm-linux-nat.c     2002/01/08 02:26:03
> *************** store_nwfpe_extended (unsigned int fn, F
> *** 194,200 ****
>   void
>   store_nwfpe_register (int regno, FPA11 * fpa11)
>   {
> !   if (register_valid[regno])
>       {
>          unsigned int fn = regno - F0_REGNUM;
>          switch (fpa11->fType[fn])
> --- 194,200 ----
>   void
>   store_nwfpe_register (int regno, FPA11 * fpa11)
>   {
> !   if (register_cached (regno))
>       {
>          unsigned int fn = regno - F0_REGNUM;
>          switch (fpa11->fType[fn])
> *************** store_nwfpe_register (int regno, FPA11 *
> *** 216,222 ****
> 
> 
>   /* Get the value of a particular register from the floating point
> !    state of the process and store it into registers[].  */
> 
>   static void
>   fetch_fpregister (int regno)
> --- 216,222 ----
> 
> 
>   /* Get the value of a particular register from the floating point
> !    state of the process and store it into regcache.  */
> 
>   static void
>   fetch_fpregister (int regno)
> *************** fetch_fpregister (int regno)
> *** 265,271 ****
>   }
> 
>   /* Get the whole floating point state of the process and store it
> !    into registers[].  */
> 
>   static void
>   fetch_fpregs (void)
> --- 265,271 ----
>   }
> 
>   /* Get the whole floating point state of the process and store it
> !    into regcache.  */
> 
>   static void
>   fetch_fpregs (void)
> *************** fetch_fpregs (void)
> *** 313,319 ****
>   }
> 
>   /* Save a particular register into the floating point state of the
> !    process using the contents from registers[].  */
> 
>   static void
>   store_fpregister (int regno)
> --- 313,319 ----
>   }
> 
>   /* Save a particular register into the floating point state of the
> !    process using the contents from regcache.  */
> 
>   static void
>   store_fpregister (int regno)
> *************** store_fpregister (int regno)
> *** 333,339 ****
>       }
> 
>     /* Store fpsr.  */
> !   if (FPS_REGNUM == regno && register_valid[FPS_REGNUM])
>       read_register_gen (FPS_REGNUM, (char *) &fp.fpsr);
> 
>     /* Store the floating point register.  */
> --- 333,339 ----
>       }
> 
>     /* Store fpsr.  */
> !   if (FPS_REGNUM == regno && register_cached (FPS_REGNUM))
>       read_register_gen (FPS_REGNUM, (char *) &fp.fpsr);
> 
>     /* Store the floating point register.  */
> *************** store_fpregister (int regno)
> *** 351,357 ****
>   }
> 
>   /* Save the whole floating point state of the process using
> !    the contents from registers[].  */
> 
>   static void
>   store_fpregs (void)
> --- 351,357 ----
>   }
> 
>   /* Save the whole floating point state of the process using
> !    the contents from regcache.  */
> 
>   static void
>   store_fpregs (void)
> *************** store_fpregs (void)
> *** 371,377 ****
>       }
> 
>     /* Store fpsr.  */
> !   if (register_valid[FPS_REGNUM])
>       read_register_gen (FPS_REGNUM, (char *) &fp.fpsr);
> 
>     /* Store the floating point registers.  */
> --- 371,377 ----
>       }
> 
>     /* Store fpsr.  */
> !   if (register_cached (FPS_REGNUM))
>       read_register_gen (FPS_REGNUM, (char *) &fp.fpsr);
> 
>     /* Store the floating point registers.  */
> *************** store_fpregs (void)
> *** 389,395 ****
>   }
> 
>   /* Fetch a general register of the process and store into
> !    registers[].  */
> 
>   static void
>   fetch_register (int regno)
> --- 389,395 ----
>   }
> 
>   /* Fetch a general register of the process and store into
> !    regcache.  */
> 
>   static void
>   fetch_register (int regno)
> *************** fetch_register (int regno)
> *** 426,432 ****
>   }
> 
>   /* Fetch all general registers of the process and store into
> !    registers[].  */
> 
>   static void
>   fetch_regs (void)
> --- 426,432 ----
>   }
> 
>   /* Fetch all general registers of the process and store into
> !    regcache.  */
> 
>   static void
>   fetch_regs (void)
> *************** fetch_regs (void)
> *** 457,463 ****
>   }
> 
>   /* Store all general registers of the process from the values in
> !    registers[].  */
> 
>   static void
>   store_register (int regno)
> --- 457,463 ----
>   }
> 
>   /* Store all general registers of the process from the values in
> !    regcache.  */
> 
>   static void
>   store_register (int regno)
> *************** store_register (int regno)
> *** 465,471 ****
>     int ret, tid;
>     elf_gregset_t regs;
> 
> !   if (!register_valid[regno])
>       return;
> 
>     /* Get the thread id for the ptrace call.  */
> --- 465,471 ----
>     int ret, tid;
>     elf_gregset_t regs;
> 
> !   if (!register_cached (regno))
>       return;
> 
>     /* Get the thread id for the ptrace call.  */
> *************** store_regs (void)
> *** 509,515 ****
> 
>     for (regno = A1_REGNUM; regno <= PC_REGNUM; regno++)
>       {
> !       if (register_valid[regno])
>         read_register_gen (regno, (char *) &regs[regno]);
>       }
> 
> --- 509,515 ----
> 
>     for (regno = A1_REGNUM; regno <= PC_REGNUM; regno++)
>       {
> !       if (register_cached (regno))
>         read_register_gen (regno, (char *) &regs[regno]);
>       }
>


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