+template<typename BaseTarget>
+struct sparc_target : public BaseTarget
+{
+ void fetch_registers (struct regcache *regcache, int regnum) override
+ { sparc_fetch_inferior_registers (regcache, regnum); }
+
+ void store_registers (struct regcache *regcache, int regnum) override
+ { sparc_store_inferior_registers (regcache, regnum); }
+
+ enum target_xfer_status xfer_partial (enum target_object object,
+ const char *annex,
+ gdb_byte *readbuf,
+ const gdb_byte *writebuf,
+ ULONGEST offset, ULONGEST len,
+ ULONGEST *xfered_len) override
+ {
+ if (object == TARGET_OBJECT_WCOOKIE)
+ return sparc_xfer_wcookie (object, annex, readbuf, writebuf,
+ offset, len, xfered_len);