aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* add -isystem cmdline optionJoe Soroka2011-02-012-1/+6
|
* tcctest: plugged memleak (was polluting valgrind reports)Joe Soroka2011-02-011-0/+1
|
* tccasm: accept bracketed offset expressionsJoe Soroka2011-02-012-2/+15
|
* tccasm: accept "fmul/fadd st(0),st(n)" (dietlibc ipow/atanh)Joe Soroka2011-02-012-0/+6
|
* tccasm: allow one-line prefix+op things like "rep stosb"Joe Soroka2011-02-014-2/+68
|
* tccasm: define __ASSEMBLER__ for .S files, like gcc doesJoe Soroka2011-02-012-0/+10
|
* tccpp: fix bug in handling of recursive macrosJoe Soroka2011-02-013-2/+47
|
* weak definitions overrule non-weak prototypesJoe Soroka2011-02-013-2/+27
|
* tccasm: support .weak labelsJoe Soroka2011-02-012-0/+5
|
* support weak attribute on variablesJoe Soroka2011-02-014-4/+29
|
* asmtest: avoid testing against complex nop alignment in gasJoe Soroka2011-01-231-1/+2
| | | | | | | | | | | | | | | | | .align #,0x90 in gas ignores the 0x90 and outputs any kind of nop it feels like. the one avoided by this patch is a 7 byte nop, which gas has been doing since at least 1999: http://sourceware.org/ml/binutils/1999-10/msg00083.html In order to match what gas does, we would need to make code alignment target-specific, import a lot of code, and face the question: exactly which gas {version,target,tune} combo are we trying to match? see i386_align_code in: http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-i386.c?annotate=1.460&cvsroot=src The smart noppery is turned on via the special casing of 0x90 at line 438 in md_do_align in: http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-i386.h?annotate=1.1&cvsroot=src
* i386-asm: accept retl as a synonym for retJoe Soroka2011-01-212-0/+4
|
* accept multiple comma separated symbols for .globl/.global directives, like ↵Joe Soroka2011-01-202-2/+7
| | | | gas does
* tcc.c: fix an error when you build an object file with '-pthread' key setSergei Trofimovich2011-01-041-5/+11
| | | | | | | | | | | | | | | | | | | The problem was partially fixed by Henry in the following patch: tcc.c: skip -lpthread when -c option specified But that patch had one brawback: it is sensitive to argument order, as decision is taken during commandline parsing: $ tcc -c a.c -o a.o -pthread # 1. works fine tcc: error: file 'a.c' not found $ tcc -pthread -c a.c -o a.o # 2. blows tcc: error: cannot specify libraries with -c This patch fixes case 2. Signed-off-by: Sergei Trofimovich <st@anti-virus.by>
* lib/alloca*: mark ELF stack access flags as nonexecutableSergei Trofimovich2011-01-043-0/+12
| | | | Signed-off-by: Sergei Trofimovich <st@anti-virus.by>
* Makefile: respect LDFLAGS (set via --extra-ldflags=)Sergei Trofimovich2011-01-041-2/+2
| | | | Signed-off-by: Sergei Trofimovich <st@anti-virus.by>
* Support struct arguments with stdarg.hShinichiro Hamaji2010-12-285-54/+135
| | | | | | | | - add __builtin_va_arg_types to check how arguments were passed - move most code of stdarg into libtcc1.c - remove __builtin_malloc and __builtin_free - add a test case based on the bug report (http://www.mail-archive.com/tinycc-devel@nongnu.org/msg03036.html)
* Make alignments for struct arguments 8 bytesShinichiro Hamaji2010-12-281-4/+4
| | | | | The ABI (http://www.x86-64.org/documentation/abi.pdf) says "The size of each argument gets rounded up to eightbytes"
* Test va_copy in tcctest.cShinichiro Hamaji2010-12-281-2/+4
|
* One more fix for tcc -runShinichiro Hamaji2010-12-281-1/+2
| | | | We don't need r_addend for addresses in PLT.
* Fix for the previous commit.Shinichiro Hamaji2010-12-281-2/+3
| | | | R_X86_64_PLT32 for .so doesn't need DLL relocation.
* Handle r_addend and R_X86_64_PLT32 properly.Shinichiro Hamaji2010-12-281-7/+6
| | | | | | | | | - r_addend should be applied for PLT entries as well - R_X86_64_PLT32 should be handled just like R_X86_64_PC32 - spec says GLOB_DAT and JUMP_SLOT don't need r_addend (not tested) http://www.x86-64.org/documentation/abi.pdf Now we can -run ELF objects generated by GCC.
* configure: --sharedir defaults to /usr/local/shareHenry Kroll III2010-12-231-2/+2
|
* configure: --sharedir documentation rootHenry Kroll III2010-12-221-25/+41
|
* make: fix cannot find -ltcc with --disable-rpathHenry Kroll III2010-12-211-2/+1
|
* make: fix install with CC=tcc and potential link problemHenry Kroll III2010-12-201-1/+6
|
* configure: add --disable-rpath option (Fedora)Henry Kroll III2010-12-202-0/+10
|
* configure: improvements to option --tccdirHenry Kroll III2010-12-201-5/+8
|
* tcc: add unsupported option -pedanticHenry Kroll III2010-12-201-0/+2
|
* tcc: -m32 prefix "win32-" when file extension is presentHenry Kroll III2010-12-131-4/+14
|
* tcc: fix format string in error handlerHenry Kroll III2010-12-081-4/+4
|
* tcc: oops, error handler does not accept format stringsHenry Kroll III2010-12-081-4/+4
|
* tcc: fix -m32 and add -m64 optionHenry Kroll III2010-12-081-25/+61
|
* tcc: move undef out of if blockHenry Kroll III2010-12-061-1/+1
|
* Merge branch 'mob' of git://repo.or.cz/tinycc into krollHenry Kroll III2010-12-061-1/+3
|\
| * Copy tcclib.h to tests directory so GCC uses its own headers.Shinichiro Hamaji2010-12-071-1/+3
| | | | | | | | | | | | | | http://repo.or.cz/w/tinycc.git/commit/86ffc4812952f11a35afa19b24a3e6d1a12f4490 removed this cp command. However, it was necessary to pass tests on x86-64 because include/stdarg.h is different from GCC's definition on x86-64.
* | tcc: add -m32 option to x86_64 cross compilersHenry Kroll III2010-12-062-1/+35
|/
* trim unnecessary bits from my previous 3 commitsHenry Kroll III2010-12-052-4/+1
|
* make: i386/libtcc1.a for i386-tcc (x86_64 to i386 cross)Henry Kroll III2010-12-051-2/+10
|
* make: cross compilers exist before using them (fixes parallel make)Henry Kroll III2010-12-041-1/+2
|
* tcc: add option -s for gcc compatibility (ignored)Henry Kroll III2010-12-041-1/+5
|
* tiny_libmaker: strip leading directory to avoid buffer overrungrischka2010-12-041-3/+13
| | | | | | The arhdr.ar_name has 16 bytes. Long object names esp. with leading directory were causing a buffer overrun which was detected by glibc.
* tccelf/tcccoff: fix some type conversion warningsgrischka2010-12-042-7/+7
|
* make: new lib/Makefile for libtcc1.a on more platformsgrischka2010-12-046-254/+266
| | | | | | win32/64 cross-compilers now build libtcc1.a and install it together with the windows headers in a 'win32' sub-directory of TCCDIR.
* needs lib path on bcheck.o fixes undefined symbol '__try__'Henry Kroll III2010-12-021-1/+1
|
* make cross compilers an expert option in configure --helpHenry Kroll III2010-12-021-2/+3
|
* Add --enable-cygwin option to build on windows with cygwin+mingw32Henry Kroll III2010-12-021-1/+11
|
* Changelog: document some of the recent changesHenry Kroll III2010-12-021-0/+10
|
* Makefile: fix clean target, bcheck, add commentsHenry Kroll III2010-12-021-6/+14
|
* split cross libtcc1.a to separate directoriesHenry Kroll III2010-12-024-118/+181
|