Many thanks. Everything is now fixed including the warnings. Tested on Linux ARM/Aarch64 and Windows 32/64 using reproducible build.
Christian -----Original Message----- From: Michael Matz [mailto:matz....@frakked.de] Sent: Thursday, December 12, 2019 01:54 To: jull...@eligis.com; tinycc-devel@nongnu.org Subject: Re: [Tinycc-devel] mob is broken for ARM/ARM64 [make tcc reentrant] Hi, On Wed, 11 Dec 2019, Christian Jullien wrote: > On ARM it still fails with "In file included from ../tcc.h:348: > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float computation with VFP instructions" Sure, I was only talking about the "library 'c' not found" problem. At home I could now also test ARM: I was distracted while doing the last patch so it wasn't complete. Now fixed as well, and ARM now works again. (I've also fixed the aligned_function address test) Ciao, Michael. > > Which can be fixed by adding > > #define TCC_ARM_VFP in tcc.h > > Otherwise, Aarch64 is fine. > > Tomorrow I'll add the missing headers to remove warnings. > > -----Original Message----- > From: Tinycc-devel [mailto:tinycc-devel-bounces+eligis=orange...@nongnu.org] On Behalf Of Michael Matz > Sent: Wednesday, December 11, 2019 18:11 > To: jull...@eligis.com; tinycc-devel@nongnu.org > Subject: Re: [Tinycc-devel] mob is broken for ARM/ARM64 [make tcc reentrant] > > Hello Christian, > > On Wed, 11 Dec 2019, Christian Jullien wrote: > >> but, as still does Aarch64, gives: >> ----- libtest : tcc in threads ----- >> tcc: error: library 'c' not found > > Yeah, on x86-64 as well. I think I've fixed this in mob now. Please > recheck. > > > Ciao, > Michael. > >> >> Adding $(NATIVE_DEFINES) does not help. >> >> All other tests are OK. >> >> Do you see the light? >> >> -----Original Message----- >> From: grischka [mailto:gris...@gmx.de] >> Sent: Wednesday, December 11, 2019 14:21 >> To: jull...@eligis.com; tinycc-devel@nongnu.org >> Subject: Re: [Tinycc-devel] mob is broken for ARM/ARM64 [make tcc reentrant] >> >> Christian Jullien wrote: >> > Hi guys, >> > >> > Testing mod show that ARM and Aarch64 are broken differently. I'm >> reluctant to test it only Windows as it will break my Lisp development >> toolchain. >> >> Hi Christian, >> >> there are two things basically you could do. First in tests/Makefile:78 >> you could try adding $(NATIVE_DEFINES): >> >> @echo ------------ $@ ------------ >> ./libtcc_tes$*$(EXESUF) $(TCCFLAGS) $(NATIVE_DEFINES) <----- >> >> Second is at tcc.h:150, if you want to you could tweak the default >> settings for these architectures. The bits there are meant basically >> to make compiling tcc as simple as if it were a hello-world program >> (which it is after all, or close to): >> >> gcc tcc.c -o tcc >> >> Therefor, if you think that your system configuration is somehow >> "default", then you have my full okay to add the two or three lines >> each there to get such simplicity as a feature. ;) >> >> (Maybe TCC_ARM_VFP and/or CONFIG_TRIPLET and/or whatever you see >> on the gcc command from make.) To see whether it really works you >> would need to run two stages: >> >> gcc tcc.c -o tcc && ./tcc -B. tcc.c -o tcc1 >> >> If you did install tcc previously, -B. may be omitted too. >> >> As to 'usleep' and 'gettimeofday', maybe it needs unistd.h or time.h or >> maybe sys/time.h. I see your gcc suggests to use 'fseek' instead of >> 'usleep'. That is interesting. >> >> Thanks, >> >> --- grischka >> >> > === For ARM >> > >> > gcc -o libtcc_test_mt libtcc_test_mt.c ../libtcc.a -fno-strict-aliasing >> -I.. -I. . -lm >> -lpthread -ldl >> > libtcc_test_mt.c: In function 'sleep_ms': >> > libtcc_test_mt.c:51:5: warning: implicit declaration of function 'usleep'; >> did y ou mean >> 'fseek'? [-Wimplicit-function-declaration] >> > usleep(n * 1000); >> > ^~~~~~ >> > fseek >> > libtcc_test_mt.c: In function 'getclock_ms': >> > libtcc_test_mt.c:236:5: warning: implicit declaration of function >> 'gettimeofday' >> [-Wimplicit-function-declaration] >> > gettimeofday(&tv, NULL); >> > ^~~~~~~~~~~~ >> > ------------ libtest_mt ------------ >> > ./libtcc_test_mt -B.. -I../include -I.. -I.. >> > ----- libtest : mixed calls ------- >> > 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 >> > (25 ms) >> > ----- libtest : threads ------------ >> > 1 8 2 3 144 34 13 89 377 987 2584 4181 233 5 610 1597 6765 55 10946 21 >> > (21 ms) >> > ----- libtest : tcc in threads ----- >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > >> > (927 ms) >> > ----- compilation of tcc ----------- >> > In file included from ../tcc.c:21: >> > In file included from ../tcc.h:348: >> > ../arm-gen.c:27: error: #error "Currently TinyCC only supports float >> computation with >> VFP instructions" >> > (4 ms) >> > >> > >> > >> > >> > >> > === For Aarch64 >> > >> > libtcc_test_mt.c:51:5: warning: implicit declaration of function 'usleep' >> [-Wimplicit-function-declaration] >> > 51 | usleep(n * 1000); >> > | ^~~~~~ >> > libtcc_test_mt.c: In function 'getclock_ms': >> > libtcc_test_mt.c:236:5: warning: implicit declaration of function >> 'gettimeofday' [-Wimplicit-function-declaration] >> > 236 | gettimeofday(&tv, NULL); >> > | ^~~~~~~~~~~~ >> > ------------ libtest_mt ------------ >> > ./libtcc_test_mt -B.. -I../include -I.. -I.. >> > ----- libtest : mixed calls ------- >> > 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 >> > (41 ms) >> > ----- libtest : threads ------------ >> > 3 2 1 5 8 13 21 34 144 233 55 2584 89 610 987 377 1597 6765 4181 10946 >> > (31 ms) >> > ----- libtest : tcc in threads ----- >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > tcc: error: library 'c' not found >> > >> > (4471 ms) >> > >> > >> > _______________________________________________ >> > 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 >> > > _______________________________________________ > 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 _______________________________________________ Tinycc-devel mailing list Tinycc-devel@nongnu.org https://lists.nongnu.org/mailman/listinfo/tinycc-devel