On jeudi 15 décembre 2016 18:17:32 GMT Michael Matz wrote: > Aloha, Hi Michael,
> > with the holiday season coming up I probably am going to have some time > for cleaning up after me if necessary, so I've pushed my current stable > (in my mind) stuff to mob. It's 110 changes on these topics: > > * x86-asm improvements: new instructions, some SSE2 support, some internal > reordering, support x86-64 high registers (also in inline asm) > * asm and inline asm: above plus more compatibility with GNU as > * struct layout: support specifying packed after the struct decl, > fixing bit-field layout to be GCC and MS compatible (I know there was > recently an update for this, but it didn't get some corner cases > correctly) > * struct initialization: rewrite. It now supports initialization via > compound literals and fixes many corner cases that were handled > incorrect before > * simple dead code optimization: in code like > if (1) ... > else {stuff}; > don't emit anything for the else branch code (unless there's a different > way to enter this code, e.g. via a label). > * various assorted fixes/improvenents: long long switch values, 64bit > addends for symbols (on LP64 platforms), supporting large alignments, > some fixes in the pre-processor and more stuff. > > I've worked on this on and off since May (huh), and my immediate goal was > to be able to compile a current linux kernel with as few changes as > possible; I can do that now (and the kernel works :)); I'll probably push > these kernel sources to github on the weekend. > > I've tested that TCC on x86-64, arm64 and i386. I've not tested it on arm > (lacking a ready-to-use sandbox right now). > > Some recent change between bf692af3 (from 2016-11-12) and fe6453f8 (from > 2016-12-10) broke gawk (on x86-64), and that fail still exists with my > changes on the top; I haven't investigated that yet, but it's mostly > changes for separating out relocation processing (hello Thomas :) ). Grishka did a couple more fix on this. Do you still see the error? > > I haven't changed any APIs, so users of libtcc shouldn't have problems; > but internally there's some shuffling, so possibly this broke other > peoples private patches, I hope it's reasonably easy to rebase. > > I'm obviously interested if I've broken stuff. For instance I haven't > ever built this for windows, so testing there would be appreciated. I'm observing the following error in the testsuite now when building and testing tcc on a i386 platform: gcc -o tcctest.gcc tcctest.c -DCONFIG_TRIPLET="\"i386-linux-gnu\"" - DTCC_TARGET_I386 -I.. -I.. -w -O0 -std=gnu99 -fno-omit-frame-pointer tcctest.c: In function ‘get_asm_string’: tcctest.c:3151:3: error: impossible constraint in ‘asm’ "1:\n" ^~~ Thanks for all the work. Best regards, Thomas
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Tinycc-devel mailing list Tinycc-devel@nongnu.org https://lists.nongnu.org/mailman/listinfo/tinycc-devel