mirror of
https://github.com/frida/tinycc
synced 2024-12-26 23:09:41 +03:00
b691585785
tccgen.c:gv() when loading long long from lvalue, before was saving all registers which caused problems in the arm function call register parameter preparation, as with void foo(long long y, int x); int main(void) { unsigned int *xx[1], x; unsigned long long *yy[1], y; foo(**yy, **xx); return 0; } Now only the modified register is saved if necessary, as in this case where it is used to store the result of the post-inc: long long *p, v, **pp; v = 1; p = &v; p[0]++; printf("another long long spill test : %lld\n", *p); i386-gen.c : - found a similar problem with TOK_UMULL caused by the vstack juggle in tccgen:gen_opl() (bug seen only when using EBX as 4th register) |
||
---|---|---|
.. | ||
pp | ||
tests2 | ||
abitest.c | ||
asmtest.S | ||
boundtest.c | ||
gcctestsuite.sh | ||
libtcc_test.c | ||
Makefile | ||
tcctest.c | ||
tcctest.py | ||
testfp.c | ||
vla_test.c |