return RETURN_VALUE_STRUCT_CONVENTION;
{   if (readbuf) { ULONGEST addr;  regcache_raw_read_unsigned (regcache, M68K_A0_REGNUM, &addr); read_memory (addr, readbuf, TYPE_LENGTH (type)); }  return RETURN_VALUE_ABI_RETURNS_ADDRESS; }
m68k_svr4_return_value (struct gdbarch *gdbarch, struct type *type,			struct regcache *regcache, void *readbuf,			const void *writebuf){  enum type_code code = TYPE_CODE (type);  if ((code == TYPE_CODE_STRUCT || code == TYPE_CODE_UNION)      && !m68k_reg_struct_return_p (gdbarch, type))    return RETURN_VALUE_STRUCT_CONVENTION;  /* This special case is for structures consisting of a single     `float' or `double' member.  These structures are returned in     %fp0.  For these structures, we call ourselves recursively,     changing TYPE into the type of the first member of the structure.     Since that should work for all structures that have only one     member, we don't bother to check the member's type here.  */  if (code == TYPE_CODE_STRUCT && TYPE_NFIELDS (type) == 1)    {      type = check_typedef (TYPE_FIELD_TYPE (type, 0));      return m68k_svr4_return_value (gdbarch, type, regcache,				     readbuf, writebuf);    }  if (readbuf)    m68k_svr4_extract_return_value (type, regcache, readbuf);  if (writebuf)    m68k_svr4_store_return_value (type, regcache, writebuf);  return RETURN_VALUE_REGISTER_CONVENTION;}