]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Move more supply and collect methods to reg_buffer
authorYao Qi <yao.qi@linaro.org>
Fri, 22 Sep 2017 13:53:06 +0000 (14:53 +0100)
committerYao Qi <yao.qi@linaro.org>
Fri, 13 Oct 2017 10:52:11 +0000 (11:52 +0100)
This patch moves more supply and collect methods to class reg_buffer

gdb:

2017-09-22  Yao Qi  <yao.qi@linaro.org>
:
* regcache.c (reg_buffer::raw_collect_integer):
(regcache_supply_regset):
(regcache_collect_regset):
* regcache.h (public:):
(public:):
(private:):

gdb/regcache.c
gdb/regcache.h

index 8978b14f257f3474faab01cb4fc969b0fdcdce2e..ebc9e69c5ba237d9fbe77af9613af0a511ac08f2 100644 (file)
@@ -1182,10 +1182,10 @@ reg_buffer::raw_collect_integer (int regnum, gdb_byte *addr, int addr_len,
 }
 
 void
-regcache::transfer_regset (const struct regset *regset,
-                          struct regcache *out_regcache,
-                          int regnum, const void *in_buf,
-                          void *out_buf, size_t size) const
+reg_buffer::transfer_regset (const struct regset *regset,
+                            struct reg_buffer *out_regcache,
+                            int regnum, const void *in_buf,
+                            void *out_buf, size_t size) const
 {
   const struct regcache_map_entry *map;
   int offs = 0, count;
@@ -1249,8 +1249,8 @@ regcache_supply_regset (const struct regset *regset,
 }
 
 void
-regcache::supply_regset (const struct regset *regset,
-                        int regnum, const void *buf, size_t size)
+reg_buffer::supply_regset (const struct regset *regset,
+                          int regnum, const void *buf, size_t size)
 {
   transfer_regset (regset, this, regnum, buf, NULL, size);
 }
@@ -1268,8 +1268,8 @@ regcache_collect_regset (const struct regset *regset,
 }
 
 void
-regcache::collect_regset (const struct regset *regset,
-                        int regnum, void *buf, size_t size) const
+reg_buffer::collect_regset (const struct regset *regset,
+                           int regnum, void *buf, size_t size) const
 {
   transfer_regset (regset, NULL, regnum, NULL, buf, size);
 }
index 2aae6d396c7af9db1066ff83dcb11e25351c25b9..a76552f33ce4e7103ea669f0877bf425b7f685c8 100644 (file)
@@ -273,12 +273,23 @@ public:
 
   gdb_byte *register_buffer (int regnum) const;
 
+  void supply_regset (const struct regset *regset,
+                     int regnum, const void *buf, size_t size);
+
+  void collect_regset (const struct regset *regset, int regnum,
+                      void *buf, size_t size) const;
+
 protected:
   struct regcache_descr *m_descr;
 
 private:
   void validate (int regnum) const;
 
+  void transfer_regset (const struct regset *regset,
+                       struct reg_buffer *out_regcache,
+                       int regnum, const void *in_buf,
+                       void *out_buf, size_t size) const;
+
   bool m_has_pseudo;
   /* The register buffers.  */
   gdb_byte *m_registers;
@@ -348,13 +359,6 @@ public:
   void cooked_write_part (int regnum, int offset, int len,
                          const gdb_byte *buf);
 
-  void supply_regset (const struct regset *regset,
-                     int regnum, const void *buf, size_t size);
-
-
-  void collect_regset (const struct regset *regset, int regnum,
-                      void *buf, size_t size) const;
-
   void dump (ui_file *file, enum regcache_dump_what what_to_dump);
 
   ptid_t ptid () const
@@ -383,11 +387,6 @@ private:
   enum register_status xfer_part (int regnum, int offset, int len, void *in,
                                  const void *out, bool is_raw);
 
-  void transfer_regset (const struct regset *regset,
-                       struct regcache *out_regcache,
-                       int regnum, const void *in_buf,
-                       void *out_buf, size_t size) const;
-
   /* The address space of this register cache (for registers where it
      makes sense, like PC or SP).  */
   struct address_space *m_aspace;