mips-tdep.c: Fix new-ABI handling of composite return values

Daniel Jacobowitz drow@false.org
Tue Sep 25 15:10:00 GMT 2007


On Tue, Sep 25, 2007 at 03:50:26PM +0100, Maciej W. Rozycki wrote:
> 2007-09-25  David Ung  <davidu@mips.com>
>             Maciej W. Rozycki  <macro@mips.com>
> 
> 	* mips-tdep.c (mips_n32n64_return_value): Per N32/N64 ABI
> 	rules return composite types in registers as appropriate.

128-bit long double is also handled in this patch - that's not a
composite type.  I think that's a merge error, though.  If you look
above the float / double block you'll find another copy of
128-bit long double support in HEAD.

>    else if (TYPE_CODE (type) == TYPE_CODE_STRUCT
>  	   && TYPE_NFIELDS (type) <= 2
>  	   && TYPE_NFIELDS (type) >= 1
>  	   && ((TYPE_NFIELDS (type) == 1
> -		&& (TYPE_CODE (TYPE_FIELD_TYPE (type, 0))
> +     	        && (TYPE_CODE (check_typedef (TYPE_FIELD_TYPE (type, 0)))

Funny indentation.  Is the only substantive change in this patch the
new calls to check_typedef?

-- 
Daniel Jacobowitz
CodeSourcery



More information about the Gdb-patches mailing list