Hi,

I don't have an ARM test system available but it is a new test...

The idea of abitest is to check compatibility of TCC calling convention with GCC, but I also made rather a lot of changes since compatibility with GCC on x86 an x86-64 had a lot of problems in corner cases. 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.

James

On 26/04/13 19:59, Christian Jullien wrote:

Here is the offending test :

../tcc -B.. -I.. -I.. -I../include -o abitest-tcc abitest.c ../libtcc.a -I.. -W all -g -O2 -fno-strict-aliasing -Wno-pointer-sign -Wno-sign-compare -Wno-unused- result -DCONFIG_LDDIR="\"lib/arm-linux-gnueabihf\"" -DCONFIG_MULTIARCHDIR="\"arm -linux-gnueabihf\"" -DTCC_TARGET_ARM -DWITHOUT_LIBTCC -DTCC_ARM_EABI -DTCC_ARM_H ARDFLOAT -DTCC_ARM_VFP -lm -ldl -I..

------------ abitest ------------

./abitest-cc lib_path=.. include="../include"

ret_int_test... success

ret_longlong_test... success

ret_float_test... success

ret_double_test... success

ret_longdouble_test... success

ret_2float_test... Segmentation fault

make[1]: *** [abitest] Error 139

make[1]: Leaving directory `/home/jullien/tinycc/tests'

make: *** [test] Error 2



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

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

Reply via email to