* buildsym.c (patch_subfile_name): Update last_source_file
[deliverable/binutils-gdb.git] / gdb / sparc-tdep.c
index c83cbcde5b3c24acca20676fca972f557818ac3b..172f98d1a5b5374cc9c9265e76f0613f619407ca 100644 (file)
@@ -279,8 +279,13 @@ CORE_ADDR
 sparc_extract_struct_value_address (regbuf)
      char regbuf[REGISTER_BYTES];
 {
+#ifdef GDB_TARGET_IS_SPARC64
+  return extract_address (regbuf + REGISTER_BYTE (O0_REGNUM),
+                         REGISTER_RAW_SIZE (O0_REGNUM));
+#else
   return read_memory_integer (((int *)(regbuf)) [SP_REGNUM] + (16 * SPARC_INTREG_SIZE), 
                              TARGET_PTR_BIT / TARGET_CHAR_BIT);
+#endif
 }
 
 /* Find the pc saved in frame FRAME.  */
@@ -1272,7 +1277,7 @@ get_longjmp_target (pc)
    related to C++ mangling, it is done for C too.  */
 
 char *
-solaris_static_transform_name (name)
+sunpro_static_transform_name (name)
      char *name;
 {
   char *p;
@@ -1295,20 +1300,11 @@ solaris_static_transform_name (name)
 \f
 #ifdef GDB_TARGET_IS_SPARC64
 
-CORE_ADDR
-sparc64_extract_struct_value_address (regbuf)
-     char regbuf[REGISTER_BYTES];
-{
-  CORE_ADDR addr;
-
-  /* FIXME: We assume a non-leaf function.  */
-  addr = read_register (I0_REGNUM);
-  return addr;
-}
-
 /* Utilities for printing registers.
    Page numbers refer to the SPARC Architecture Manual.  */
 
+static void dump_ccreg PARAMS ((char *, int));
+
 static void
 dump_ccreg (reg, val)
      char *reg;
This page took 0.034532 seconds and 4 git commands to generate.