Fix offsets to access fpregset_t in sparc64-linux targets.
authorJose E. Marchesi <jose.marchesi@oracle.com>
Fri, 14 Feb 2014 10:29:11 +0000 (02:29 -0800)
committerJose E. Marchesi <jose.marchesi@oracle.com>
Fri, 14 Feb 2014 10:29:11 +0000 (02:29 -0800)
The %fsr register is not being properly accessed from gdb in
sparc64.  This is because sparc64_supply_fpregset and
sparc64_collect_fpregset are using the offsets from the
sparc32_bsd_fpregset constant instead of sparc64_bsd_fpregset.
This patch fixes this by registering the proper offsets for
sparc64-linux targets.

2014-02-14  Jose E. Marchesi  <jose.marchesi@oracle.com>

* sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Register
the proper offsets to access fpregset_t.

gdb/ChangeLog
gdb/sparc64-linux-nat.c

index 4762690baa4652f7705b228de3c633febb09568e..7611dbb68f541cb5a29949813e1be8f078ef967a 100644 (file)
@@ -1,3 +1,8 @@
+2014-02-14  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Register
+       the proper offsets to access fpregset_t.
+
 2014-02-13  Sanimir Agovic  <sanimir.agovic@intel.com>
 
        * cris-tdep.c (cris_supply_gregset): Remove zerobuf.
index a18da3aa3bc6fefd444030a21af18d1c3af679b9..80411dc177511d3dee2ac7ec921d73f83573229f 100644 (file)
@@ -80,6 +80,8 @@ _initialize_sparc64_linux_nat (void)
   /* Fill in the generic GNU/Linux methods.  */
   t = linux_target ();
 
+  sparc_fpregset = &sparc64_bsd_fpregset;
+
   /* Add our register access methods.  */
   t->to_fetch_registers = sparc_fetch_inferior_registers;
   t->to_store_registers = sparc_store_inferior_registers;