2002-10-02 Andrew Cagney <ac131313@redhat.com>
authorAndrew Cagney <cagney@redhat.com>
Wed, 2 Oct 2002 21:21:47 +0000 (21:21 +0000)
committerAndrew Cagney <cagney@redhat.com>
Wed, 2 Oct 2002 21:21:47 +0000 (21:21 +0000)
* rs6000-tdep.c (rs6000_store_struct_return): Store struct_return
value in register 3 adjusted by ppc_gp0_regnum.

gdb/ChangeLog
gdb/rs6000-tdep.c

index f210799b4bb56a90182cc39894ef0eccf69324ce..5bb236a2369509ea043091396ea62b5d8ed284d9 100644 (file)
@@ -1,5 +1,8 @@
 2002-10-02  Andrew Cagney  <ac131313@redhat.com>
 
+       * rs6000-tdep.c (rs6000_store_struct_return): Store struct_return
+       value in register 3 adjusted by ppc_gp0_regnum.
+
        * rs6000-tdep.c (skip_prologue): Bias alloca_reg by ppc_gp0_regnum.
 
 2002-10-02  Marko Mlinar <markom@opencores.org>
index 152eb0e3a0cfc02d08968546c3369c8c4ea7fd76..53b9dd333e0bfcbc3a192d0dfce8e01611ab88c7 100644 (file)
@@ -1991,7 +1991,8 @@ rs6000_stab_reg_to_regnum (int num)
 static void
 rs6000_store_struct_return (CORE_ADDR addr, CORE_ADDR sp)
 {
-  write_register (3, addr);
+  struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch);
+  write_register (tdep->ppc_gp0_regnum + 3, addr);
 }
 
 /* Write into appropriate registers a function return value