This commit is contained in:
bellard 2002-08-31 12:44:16 +00:00
parent 540d31895c
commit bc427f5bec
3 changed files with 38 additions and 21 deletions

View File

@ -12,7 +12,7 @@ CFLAGS+=-m386 -malign-functions=0
CFLAGS+=-DCONFIG_TCC_PREFIX=\"$(prefix)\"
DISAS=objdump -d
INSTALL=install
VERSION=0.9.10
VERSION=0.9.11
# run local version of tcc with local libraries and includes
TCC=./tcc -B. -I.
@ -117,7 +117,7 @@ bcheck.o: bcheck.c
install: tcc libtcc1.o bcheck.o
$(INSTALL) -m755 tcc $(prefix)/bin
$(INSTALL) tcc.1 $(prefix)/share/man/man1
$(INSTALL) tcc.1 $(prefix)/man/man1
mkdir -p $(prefix)/lib/tcc
mkdir -p $(prefix)/lib/tcc/include
$(INSTALL) -m644 libtcc1.o bcheck.o $(prefix)/lib/tcc
@ -179,21 +179,24 @@ instr.o: instr.S
tcc-doc.html: tcc-doc.texi
texi2html -monolithic -number $<
FILES= Makefile Makefile.uClibc \
README TODO COPYING \
Changelog tcc-doc.texi tcc-doc.html \
tcc.1 \
tcc.c i386-gen.c tccelf.c tcctok.h \
bcheck.c libtcc1.c \
il-opcodes.h il-gen.c \
elf.h stab.h stab.def \
stddef.h stdarg.h stdbool.h float.h \
tcclib.h libtcc.h libtcc_test.c \
ex1.c ex2.c ex3.c ex4.c ex5.c \
tcctest.c boundtest.c
FILE=tcc-$(VERSION)
tar:
rm -rf /tmp/$(FILE)
cp -r ../tcc /tmp/$(FILE)
( cd /tmp ; tar zcvf ~/$(FILE).tar.gz \
$(FILE)/Makefile $(FILE)/Makefile.uClibc \
$(FILE)/README $(FILE)/TODO $(FILE)/COPYING \
$(FILE)/Changelog $(FILE)/tcc-doc.texi $(FILE)/tcc-doc.html \
$(FILE)/tcc.1 \
$(FILE)/tcc.c $(FILE)/i386-gen.c $(FILE)/tccelf.c $(FILE)/tcctok.h \
$(FILE)/bcheck.c $(FILE)/libtcc1.c \
$(FILE)/il-opcodes.h $(FILE)/il-gen.c \
$(FILE)/elf.h $(FILE)/stab.h $(FILE)/stab.def \
$(FILE)/stddef.h $(FILE)/stdarg.h $(FILE)/stdbool.h $(FILE)/float.h \
$(FILE)/tcclib.h $(FILE)/libtcc.h $(FILE)/libtcc_test.c \
$(FILE)/ex*.c $(FILE)/tcctest.c $(FILE)/boundtest.c )
mkdir -p /tmp/$(FILE)
cp -P $(FILES) /tmp/$(FILE)
( cd /tmp ; tar zcvf ~/$(FILE).tar.gz $(FILE) )
rm -rf /tmp/$(FILE)

13
TODO
View File

@ -1,15 +1,18 @@
TODO list:
- add separate symbol/offset handling (= fix some constant
initialisation bugs)
- setjmp is not supported properly in bound checking.
- fix constant error msg
- add alloca()
- add typeof()
- add checks for multiple including of same file (= compile even faster)
- add 'CType' structure to optimize type handling (= compile even faster)
- suppress unneeded hash table for Symbols (= compile even faster)
- add checks for multiple including of same file (= compile even faster)
- ignore at least asm extension
- setjmp is not supported properly in bound checking.
- better local variables handling (needed for other targets)
- fix bound check code with '&' on local variables (currently done
only for local arrays).
- To check: bound checking and float/long long/struct copy code
- To check: bound checking and float/long long/struct copy code. bound
checking and symbol + offset optimization
- To fix: 'sizeof' generate code if too complex expression is given.
- free all allocated data and use longjmp for errors (useful for libtcc use)

View File

@ -67,9 +67,12 @@ Compile a.c and b.c, link them and generate the executable myprog.
@item tcc -o myprog a.o b.o
link a.o and b.o together and generate the executable myprog.
@item tcc -c -o a.o a.c
@item tcc -c a.c
Compile a.c and generate object file a.o
@item tcc -r -o ab.o a.c b.c
Compile a.c and b.c, link them together and generate the object file ab.o.
@end table
Scripting:
@ -163,6 +166,10 @@ must also be given).
Generate a statically linked executable (default is a shared linked
executable) (@samp{-o} option must also be given).
@item -r
Generate an object file combining all input files (@samp{-o} option must
also be given).
@end table
@chapter C language support
@ -309,6 +316,10 @@ generate function @code{'my_add'} in section @code{.mycodesection}.
dprintf("one arg %d\n", 1);
@end example
@item @code{__FUNCTION__} is interpreted as C99 @code{__func__}
(so it has not exactly the same semantics as string literal GNUC
where it is a string literal).
@end itemize
@section TinyCC extensions