fix symtab.c
[deliverable/binutils-gdb.git] / gdb / h8300-tdep.c
index bcb5b342cf75c3333e6e2abbc047e9fab04ac51f..0e9d6c4b8a8765c92adf24322720af31a8227988 100644 (file)
@@ -1,7 +1,6 @@
 /* Target-machine dependent code for Renesas H8/300, for GDB.
 
-   Copyright (C) 1988, 1990-1996, 1998-2003, 2005, 2007-2012 Free
-   Software Foundation, Inc.
+   Copyright (C) 1988-2013 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -751,12 +750,12 @@ h8300_extract_return_value (struct type *type, struct regcache *regcache,
   int len = TYPE_LENGTH (type);
   ULONGEST c, addr;
 
-  switch (TYPE_LENGTH (type))
+  switch (len)
     {
     case 1:
     case 2:
       regcache_cooked_read_unsigned (regcache, E_RET0_REGNUM, &c);
-      store_unsigned_integer (valbuf, TYPE_LENGTH (type), byte_order, c);
+      store_unsigned_integer (valbuf, len, byte_order, c);
       break;
     case 4:                    /* Needs two registers on plain H8/300 */
       regcache_cooked_read_unsigned (regcache, E_RET0_REGNUM, &c);
@@ -768,9 +767,8 @@ h8300_extract_return_value (struct type *type, struct regcache *regcache,
       if (TYPE_CODE (type) == TYPE_CODE_INT)
        {
          regcache_cooked_read_unsigned (regcache, E_RET0_REGNUM, &addr);
-         c = read_memory_unsigned_integer ((CORE_ADDR) addr,
-                                           TYPE_LENGTH (type), byte_order);
-         store_unsigned_integer (valbuf, TYPE_LENGTH (type), byte_order, c);
+         c = read_memory_unsigned_integer ((CORE_ADDR) addr, len, byte_order);
+         store_unsigned_integer (valbuf, len, byte_order, c);
        }
       else
        {
This page took 0.023708 seconds and 4 git commands to generate.