From 4b3c6e74aba07d61e91b2e0ba7190483a0f9f000 Mon Sep 17 00:00:00 2001 From: grischka Date: Sun, 23 Jul 2017 21:24:11 +0200 Subject: tccgen: nodata_wanted fix, default ONE_SOURCE, etc... tccgen.c: doubles need to be aligned, on ARM. The section_reserve() in init_putv does not do that. -D ONE_SOURCE: is now the default and not longer needed. Also, tcc.h now sets the default native target. These both make compiling tcc simple as "gcc tcc.c -o tcc -ldl" again. arm-asm.c: enable pseudo asm also for inline asm tests/tests2/Makefile: disable bitfield tests except on windows and x86_64 and don't generate-always tcc.c: fix a loop with -dt on errors configure: print compiler version (as recognized) tccpp.c: actually define symbols for tcc -dt clear static variables (needed for -dt or libtcc usage) 96_nodata_wanted.c: use __label__ instead of asm lib/files: use native symbols (__i386__ etc.) instead of TCC_TARGET_... --- tcc.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'tcc.c') diff --git a/tcc.c b/tcc.c index bef02e7..4c7235a 100644 --- a/tcc.c +++ b/tcc.c @@ -18,10 +18,9 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#ifdef ONE_SOURCE -#include "libtcc.c" -#else #include "tcc.h" +#if ONE_SOURCE +# include "libtcc.c" #endif #include "tcctools.c" @@ -335,12 +334,14 @@ redo: } s->filetype = 0; s->alacarte_link = 1; - if (ret || --n == 0 + if (--n == 0 || ret || (s->output_type == TCC_OUTPUT_OBJ && !s->option_r)) break; } - if (s->output_type == TCC_OUTPUT_PREPROCESS) { + if (s->run_test) { + t = 0; + } else if (s->output_type == TCC_OUTPUT_PREPROCESS) { ; } else if (0 == ret) { if (s->output_type == TCC_OUTPUT_MEMORY) { @@ -357,10 +358,6 @@ redo: } } - if (t) - ret = 0; - if (s->run_test) - t = 0; if (s->do_bench && (n | t | ret) == 0) tcc_print_stats(s, getclock_ms() - start_time); tcc_delete(s); -- cgit v1.3.1