From e7c71e24730ae07241980812c8b747963f216260 Mon Sep 17 00:00:00 2001 From: Michael Matz Date: Wed, 22 Nov 2017 17:57:43 +0100 Subject: tccasm: synch C and asm symtab tighter See testcase. The C and asm symtab are still separate, but integrated tighter: the asm labels are only synched at file end, not after each asm snippet (this fixes references from one to another asm block), the C and asm syms are synched both ways, so defining things in asm and refering from C, or the other way around works. In effect this model reflects what happens with GCC better. For this the asm labels aren't using the C label namespace anymore, but their own, which increases the size of each TokenSym by a pointer. --- tests/Makefile | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'tests/Makefile') diff --git a/tests/Makefile b/tests/Makefile index 6a61717..61b585e 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -16,6 +16,7 @@ TESTS = \ memtest \ dlltest \ abitest \ + asm-c-connect-test \ vla_test-run \ cross-test \ tests2-dir \ @@ -44,7 +45,7 @@ ifeq ($(CONFIG_arm_eabi),yes) TESTS := $(filter-out test3,$(TESTS)) endif ifeq (,$(filter i386 x86_64,$(ARCH))) - TESTS := $(filter-out dlltest,$(TESTS)) + TESTS := $(filter-out dlltest asm-c-connect-test,$(TESTS)) endif ifndef CONFIG_cross TESTS := $(filter-out cross-%,$(TESTS)) @@ -231,6 +232,13 @@ vla_test-run: vla_test$(EXESUF) @echo ------------ $@ ------------ ./vla_test$(EXESUF) +asm-c-connect$(EXESUF): asm-c-connect-1.c asm-c-connect-2.c + $(TCC) -o $@ $^ + +asm-c-connect-test: asm-c-connect$(EXESUF) + @echo ------------ $@ ------------ + ./asm-c-connect$(EXESUF) + cross-test : @echo ------------ $@ ------------ $(TOP)/i386-tcc$(EXESUF) $(TCCFLAGS-unx) -c $(TOPSRC)/examples/ex3.c && echo "ok" @@ -264,6 +272,7 @@ cache: tcc_g clean: rm -f *~ *.o *.a *.bin *.i *.ref *.out *.out? *.out?b *.cc *.gcc rm -f *-cc *-gcc *-tcc *.exe hello libtcc_test vla_test tcctest[1234] + rm -f asm-c-connect$(EXESUF) rm -f ex? tcc_g weaktest.*.txt *.def @$(MAKE) -C tests2 $@ @$(MAKE) -C pp $@ -- cgit v1.3.1