Mon Aug 24 18:29:03 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
authorMichael Snyder <msnyder@vmware.com>
Tue, 25 Aug 1998 01:31:06 +0000 (01:31 +0000)
committerMichael Snyder <msnyder@vmware.com>
Tue, 25 Aug 1998 01:31:06 +0000 (01:31 +0000)
        * tracepoint.c (collect_symbol): Handle register doubles that
        are stored in two registers.

gdb/ChangeLog
gdb/tracepoint.c

index 2ac8f9f..d7f31a1 100644 (file)
@@ -1,3 +1,8 @@
+Mon Aug 24 18:29:03 1998  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * tracepoint.c (collect_symbol): Handle register doubles that
+       are stored in two registers.
+
 Mon Aug 24 14:39:08 1998  Mark Alexander  <marka@cygnus.com>
 
        * sh-stub.c (undoSStep): Improve comment.
index f85ac54..107ff4d 100644 (file)
@@ -1206,6 +1206,11 @@ collect_symbol (collect, sym)
     if (info_verbose)
       printf_filtered ("LOC_REG[parm] %s: ", SYMBOL_NAME (sym));
     add_register (collect, reg);
+    /* check for doubles stored in two registers */
+    /* FIXME: how about larger types stored in 3 or more regs? */
+    if (TYPE_CODE (SYMBOL_TYPE (sym)) == TYPE_CODE_FLT &&
+       len > REGISTER_RAW_SIZE (reg))
+      add_register (collect, reg + 1);
     break;
   case LOC_REF_ARG:
     printf_filtered ("Sorry, don't know how to do LOC_REF_ARG yet.\n");