Sat Apr 15 14:05:09 1995 Jim Kingdon (kingdon@lioth.cygnus.com)

* alpha-tdep.c (alpha_push_arguments): Fix typo (TYPE_VALUE ->
	VALUE_TYPE).  Do the cast for TYPE_CODE_BOOL, TYPE_CODE_CHAR,
	TYPE_CODE_ENUM, and TYPE_CODE_RANGE as well as TYPE_CODE_INT.

Sat Apr 15 14:04:32 1995  Per Bothner  <bothner@cygnus.com>

	* alpha-tdep.c (alpha_push_arguments): Only cast to long for
	TYPE_CODE_INT.
This commit is contained in:
Jim Kingdon 1995-04-15 21:13:08 +00:00
parent d7c4766c8c
commit b3636ee55e
2 changed files with 24 additions and 2 deletions

View File

@ -1,3 +1,14 @@
Sat Apr 15 14:05:09 1995 Jim Kingdon (kingdon@lioth.cygnus.com)
* alpha-tdep.c (alpha_push_arguments): Fix typo (TYPE_VALUE ->
VALUE_TYPE). Do the cast for TYPE_CODE_BOOL, TYPE_CODE_CHAR,
TYPE_CODE_ENUM, and TYPE_CODE_RANGE as well as TYPE_CODE_INT.
Sat Apr 15 14:04:32 1995 Per Bothner <bothner@cygnus.com>
* alpha-tdep.c (alpha_push_arguments): Only cast to long for
TYPE_CODE_INT.
start-sanitize-gdbtk
Sat Apr 15 13:52:24 1995 Stan Shebs <shebs@andros.cygnus.com>

View File

@ -691,8 +691,19 @@ alpha_push_arguments (nargs, args, sp, struct_return, struct_addr)
{
value_ptr arg = args[i];
/* Cast argument to long if necessary as the compiler does it too. */
if (TYPE_LENGTH (VALUE_TYPE (arg)) < TYPE_LENGTH (builtin_type_long))
arg = value_cast (builtin_type_long, arg);
switch (TYPE_CODE (VALUE_TYPE (arg)))
{
case TYPE_CODE_INT:
case TYPE_CODE_BOOL:
case TYPE_CODE_CHAR:
case TYPE_CODE_RANGE:
case TYPE_CODE_ENUM:
if (TYPE_LENGTH (VALUE_TYPE (arg)) < TYPE_LENGTH (builtin_type_long))
arg = value_cast (builtin_type_long, arg);
break;
default:
break;
}
m_arg->len = TYPE_LENGTH (VALUE_TYPE (arg));
m_arg->offset = accumulate_size;
accumulate_size = (accumulate_size + m_arg->len + 7) & ~7;