On Fri, Apr 26, 2013 at 08:27:25PM +0100, James Lyon wrote:
> I think that ARM should use a hidden pointer to return
> the data in ret_2float_test, but reading the ARM EABI spec a
> structure with 2 floats in might count as a "64-bit containerized
> vector" and thus would be returned in r0 and r1. In that case I
> think the thing to do is modify gfunc_sret to detect this.

GCC with hard float ABI returns the structure in s0 and s1.

There are two things broken in the code generated by TCC:
First of all TCC thinks it has to return the structure in
memory pointed to by r0 and second it gets confused about where
it stored r0 and instead reads the first float from the stack
and interpretes that as a pointer.

And I am not happy that is_fconst() apparently does not work.

  Daniel


_______________________________________________
Tinycc-devel mailing list
Tinycc-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/tinycc-devel

Reply via email to