Commit f34e52f7 by Jakub Jelinek Committed by Richard Henderson

sparc.c (sparc_va_arg): Fix sparc64 va_arg aggregate passing for sizes <= 16 bytes.

        * config/sparc/sparc.c (sparc_va_arg): Fix sparc64 va_arg
        aggregate passing for sizes <= 16 bytes.

From-SVN: r30726
parent 4cb74b76
1999-11-30 Jakub Jelinek <jakub@redhat.com>
* config/sparc/sparc.c (sparc_va_arg): Fix sparc64 va_arg
aggregate passing for sizes <= 16 bytes.
1999-11-30 Bernd Schmidt <bernds@cygnus.co.uk>
* cse.c (FIXED_REGNO_P): Delete tests for OVERLAPPING_REGNO_P.
......
......@@ -4332,11 +4332,16 @@ sparc_va_arg (valist, type)
if (TYPE_ALIGN (type) >= 2 * BITS_PER_WORD)
align = 2 * UNITS_PER_WORD;
if (AGGREGATE_TYPE_P (type) && size > 16)
if (AGGREGATE_TYPE_P (type))
{
if (size > 16)
{
indirect = 1;
size = rsize = UNITS_PER_WORD;
}
else
size = rsize;
}
}
else
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment