Commit Graph

305 Commits

Author SHA1 Message Date
grischka
1300cec38c free_section bugfix 2008-09-12 02:36:01 +02:00
grischka
f9bf48d643 release loaded dlls cleanly (Sam K) 2008-05-05 22:40:49 +00:00
grischka
96bd8f2b25 enable pe-output from libtcc (Shmuel Zeigerman) 2008-05-05 22:39:43 +00:00
grischka
f2698687fb fix options in C scripts after -run 2008-04-27 18:50:35 +00:00
grischka
5247bbc2f0 fix stabstr with linked objects 2008-04-27 18:49:31 +00:00
grischka
23594b6980 enable multiple states and fix minor memory leaks 2008-04-27 18:47:35 +00:00
grischka
f22e961f80 update manual, changelog 2008-03-31 19:50:58 +00:00
grischka
a327c7a552 added verbosity levels (-vv -vvv) 2008-03-31 19:49:14 +00:00
grischka
4d9aaacc85 Accept standard input as an inputstream (Hanzac Chen) 2008-03-31 18:42:56 +00:00
grischka
9bcc0b970b Add -soname linker option (Marc Andre Tanner) 2008-03-25 21:04:47 +00:00
grischka
6ed868c51c Enable -B option for library path on win32 2008-03-08 20:00:56 +00:00
grischka
3667408a57 Just warn about unknown directives, define __STDC_VERSION__=199901L 2008-01-16 20:16:35 +00:00
grischka
5342b32eef Switch to newer tccpe.c (includes support for resources) 2007-12-19 17:36:42 +00:00
grischka
adb1456472 Handle backslashes within #include, #error, #warning 2007-12-17 19:35:15 +00:00
grischka
6c96c41ee4 Import changesets (part 4) 428,457,460,467: defines for openbsd etc. 2007-12-16 18:24:44 +00:00
grischka
34140dd627 Use _WIN32 for a windows hosted tcc and define it for the PE target. 2007-12-13 19:07:19 +00:00
grischka
f99d3de221 Import 409,410: ARM EABI by Daniel Glckner 2007-12-04 20:38:09 +00:00
grischka
2de1b2d14c Some in-between fixes (See Changelog for details). 2007-11-25 22:14:35 +00:00
grischka
d778bde7f9 Import more changesets from Rob Landley's fork (part 2) 2007-11-21 17:16:31 +00:00
grischka
54bf8c0556 Import some changesets from Rob Landley's fork (part 1) 2007-11-14 17:34:30 +00:00
bellard
fb2c34f8cd fixed sign extension in some type conversions (Dave Dodge) 2006-10-28 14:47:39 +00:00
bellard
52b7254b9c fixed multiple typedef specifiers handling 2006-10-28 14:28:02 +00:00
bellard
0bea5c7f21 workaround for function pointers in conditional expressions (Dave Dodge) 2006-10-28 14:15:37 +00:00
bellard
24a19cc37e discard type qualifiers when comparing function parameters (Dave Dodge) 2006-10-28 14:13:28 +00:00
bellard
3b8cd565be fixed multiple concatenation of PPNUM tokens (initial patch by Dave Dodge) 2006-10-28 14:05:19 +00:00
bellard
200b58dad8 initial implementation of -E option 2006-10-16 19:44:00 +00:00
bellard
62c5a5466a fixed parsing of function parameters 2005-09-03 22:51:34 +00:00
bellard
7bc5e51847 anonymous union/struct support (Filip Navara) 2005-09-03 22:33:53 +00:00
bellard
e9c64e3f47 windows style fastcall (Filip Navara) 2005-09-03 22:21:22 +00:00
bellard
81f957ae09 normalized slashes in paths (Filip Navara) 2005-09-03 22:18:51 +00:00
bellard
6f8b8887b1 added support for win32 wchar_t (Filip Navara) 2005-09-03 21:54:47 +00:00
bellard
44738b516a fixed function type check 2005-09-03 21:07:35 +00:00
bellard
b0b8ac13ce mark executable sections as executable when running in memory 2005-09-03 18:31:43 +00:00
bellard
4d7eadb2fa preprocessor function macro parsing fix (grischka) - disabled -fleading-underscore for win32 2005-06-17 22:05:58 +00:00
bellard
f6db2edc40 added -f[no-]leading-underscore - '@' symbol for asm 2005-06-15 22:32:29 +00:00
bellard
fe9b1f60ce win32 merge (grischka) 2005-04-17 13:15:54 +00:00
bellard
4821702fb4 win32 merge 2005-04-14 23:49:21 +00:00
bellard
0bca832c18 #pragma pack support (grischka) 2005-04-13 21:30:51 +00:00
bellard
8f2d519203 #include_next support (Bernhard Fischer) 2005-04-10 22:18:53 +00:00
bellard
2c538d7a2b initial PE format support 2005-04-10 21:46:58 +00:00
bellard
fc72e41a55 better gcc compatibility (Jon Griffiths) 2004-12-16 22:19:28 +00:00
bellard
48c85f1b15 optimisations: hash table for include file search, pool for symbol allocation - sympler token string allocation - '-b' fix with '-run' option 2004-11-07 15:45:19 +00:00
bellard
1d0e5e8b01 stack full fix 2004-11-02 21:55:13 +00:00
bellard
1e1d3ff687 packed attribute support 2004-10-29 23:55:13 +00:00
bellard
736b565766 fixed const and volatile function parameters typing - fixed string parsing when skipping code 2004-10-28 21:14:30 +00:00
bellard
6b52984ce4 added _Bool in bit-fields 2004-10-27 21:42:06 +00:00
bellard
c9c05ca5f0 copyright update 2004-10-27 21:38:03 +00:00
bellard
59c3563827 do not generate code for unused inline functions - fixed long long code gen bug - added --oformat linker option 2004-10-23 22:52:05 +00:00
bellard
9668499b9f primitive fastcall functions support - -fno-common option - -Ttext linker option - bit field fixes - section alignment fixes 2004-10-18 00:18:20 +00:00
bellard
13affef3f1 win32 configure 2004-10-07 21:11:43 +00:00
bellard
c50af8399d fixed __LINE__ token type 2004-10-07 20:15:50 +00:00
bellard
ec7d36326d C67 COFF executable format support (TK) 2004-10-05 22:33:55 +00:00
bellard
6e5b1cc43a ARM fixes (Daniel Glockner) 2004-10-04 22:19:21 +00:00
bellard
79c72b2419 initial TMS320C67xx support (TK) 2004-10-04 21:57:35 +00:00
bellard
df36de6507 fixes for dietlibc 2004-10-02 14:11:28 +00:00
bellard
22d8df96c6 comment parsing fix - bitfields partial fix 2004-10-02 13:48:50 +00:00
bellard
fe203057c2 fixed assignment of const struct in struct 2003-10-17 20:59:15 +00:00
bellard
114883e078 added -funsigned-char, -fsigned-char and -Wimplicit-function-declaration 2003-10-17 20:43:47 +00:00
bellard
4df5bd2eb0 ARM target support (Daniel Glockner) - allow unsigned char as default on ARM (Daniel Glockner) - fixed small ld script support (Daniel Glockner) 2003-10-14 22:15:56 +00:00
bellard
bef8703f77 added arguments to -run - fixed libc linking when running in memory - output a warning instead of an error if invalid escaped sequence in character 2003-10-04 21:23:51 +00:00
bellard
d369a77647 unbounded section name (might be useful when section name contains function name for g++ linkonce sections) 2003-10-04 14:41:18 +00:00
bellard
c5ce5eaeda fixed -w option - doc update (thanx to Romain Francoise) 2003-10-04 13:04:47 +00:00
bellard
9c1106d854 added -w option 2003-09-19 20:35:50 +00:00
bellard
f8d0241764 changed tcc_get_symbol() prototype 2003-07-20 19:19:58 +00:00
bellard
c5959b77b4 fixed typdefed type parsing (Mauro Persano) 2003-07-20 18:44:29 +00:00
bellard
7b940fcb1b reject abstract declarators in function definition (Mauro Persano) 2003-07-20 12:40:53 +00:00
bellard
21d2d99bdc suppressed warning for const function parameters 2003-06-02 20:32:30 +00:00
bellard
d0476a0e2e help update 2003-05-24 16:21:09 +00:00
bellard
98713a6be3 added -rdynamic support 2003-05-24 15:46:29 +00:00
bellard
8f5e44a439 changed license to LGPL 2003-05-24 14:11:17 +00:00
bellard
638e666c42 fixed zero arg macro parse 2003-05-18 18:48:33 +00:00
bellard
6cdf6f88d7 fixed macro argument substitution 2003-05-18 17:16:20 +00:00
bellard
c4e6b2e9be alacarte linking (Dave Long) 2003-04-28 22:06:38 +00:00
bellard
2b64f2f570 added -nostdlib 2003-04-27 11:45:01 +00:00
bellard
7828683e60 added __builtin_constant_p() and __builtin_types_compatible_p() support 2003-04-26 21:28:09 +00:00
bellard
9791bfaf48 more precise C type check support (const warnings) - added generic -W option support 2003-04-26 20:49:46 +00:00
bellard
410fc57ba0 default output object filename is basename of input filename (same behaviour as gcc) 2003-04-16 21:35:02 +00:00
bellard
214ccccea7 simpler function call API 2003-04-16 21:16:20 +00:00
bellard
c5ab452d64 switch label parse fix 2003-04-14 22:23:36 +00:00
bellard
85fa15e64c compile fix 2003-04-13 22:42:15 +00:00
bellard
40987541dc added __TIME__ and __DATE__ support - added -v and -run options 2003-04-13 21:54:03 +00:00
bellard
5647993e79 configure support 2003-04-13 19:49:30 +00:00
bellard
f46a02a360 fixed macro function bug 2003-04-13 18:32:37 +00:00
bellard
cab6018913 fixed comment parsing 2003-04-13 18:05:51 +00:00
bellard
0c618f4b7f sanitized string and character constant parsing 2003-04-13 17:37:14 +00:00
bellard
d6819c2c36 comment fixes (Peter Lund) 2003-04-13 14:35:27 +00:00
bellard
73acbe2413 function parameters must be converted to pointer of functions 2003-04-13 14:30:32 +00:00
bellard
60b9a1aa38 better _Bool lvalue support 2003-04-13 14:11:34 +00:00
bellard
eed54d6bfb struct syntax fix 2003-04-13 14:03:18 +00:00
bellard
8e40dd90bb macro opt - asm support - new option parsing - supressed IL code 2003-01-06 20:21:08 +00:00
bellard
4df76253ad FreeBSD fixes - file type guessing - glibc2.2 fixes - ELF align issue 2002-12-08 14:35:31 +00:00
bellard
abf909e1ac added static bit fields init - version change - #error and #warning fix - support aligned attribute without parameter 2002-11-24 16:00:08 +00:00
bellard
b9d9425993 fixed structure type test - fixed enum parsing - added warning for int/ptr conversions instead of error 2002-11-24 14:56:25 +00:00
bellard
7b2721ff07 added empty structs support - changed double align to 4 (i386 default ABI) - added align support for structs - added GCC defines for basic types 2002-11-24 14:18:17 +00:00
bellard
0841db04c5 fixed structure init without {} - fixed function declaration parse 2002-11-23 23:56:12 +00:00
bellard
ab9973c843 optimized unary() - fix long long signed comparisons 2002-11-23 23:12:26 +00:00
bellard
0adc5a8921 fixed line numbering 2002-11-23 22:35:28 +00:00
bellard
a9f08655ac expression optimization 2002-11-23 22:26:46 +00:00
bellard
9e180474f0 optimized token strings - optimized token hashing 2002-11-23 22:02:40 +00:00
bellard
8901fbeef1 parsing optimizations 2002-11-23 18:15:17 +00:00
bellard
b81d4ba6b3 prepared parser for direct use of file->buf_ptr - faster comment parsing 2002-11-22 23:28:06 +00:00
bellard
cdcfed9737 restored include file optimization - added static on all globals 2002-11-22 22:16:30 +00:00
bellard
2956bd85cd suppressed ch1 and preparser 2002-11-22 18:12:41 +00:00
bellard
e926c359bb error message fixes - CH_EOB is now '\' 2002-11-22 14:43:38 +00:00
bellard
2f219d8702 use CH_EOB 2002-11-22 14:12:28 +00:00
bellard
63965fc585 further parse optimizations 2002-11-22 13:37:52 +00:00
bellard
5286d3d84c suppressed secondary hash tables - began parsing optimization 2002-11-20 00:29:04 +00:00
bellard
9620fd18e4 added CType structure for type storage - supressed define hash table - added time dump in bench 2002-11-18 21:46:44 +00:00
bellard
804d0c8d41 added computed gotos - better runtime error handling 2002-11-03 00:43:55 +00:00
bellard
43f30315f9 added alignof and typeof - better sizeof support - fixed get_tok_str() for TOK_PPNUM 2002-11-02 20:45:52 +00:00
bellard
c0180c4e5f added correct ## handling : added TOK_PPNUM token 2002-11-02 17:02:31 +00:00
bellard
c62792e6aa ignore some gcc options - removed many memory leaks - suppressed many global variables 2002-11-02 14:12:32 +00:00
bellard
d8ef07df04 added tcc_relocate() and tcc_get_symbol() 2002-09-08 22:46:32 +00:00
bellard
8ecc9cd789 macro optimization - string constant optimisation 2002-09-08 21:55:47 +00:00
bellard
ab4da04aa9 added include file optimization 2002-09-08 19:34:32 +00:00
bellard
509fa60368 force #if #endif match in same file 2002-09-08 16:14:57 +00:00
bellard
405c88106d fixed bound checking for structures - fixed ?: type handling - fixed '--' parsing 2002-09-08 12:42:36 +00:00
bellard
44b19defc2 fixed octal char const parsing - better __FUNCTION__ handling - handling of static libraries in case of memory compilation 2002-08-31 12:43:39 +00:00
bellard
6dd6a026c3 better command line parsing - added -r option 2002-08-30 22:46:35 +00:00
bellard
d2115bfb27 added symbol + relocation handling 2002-08-29 23:05:59 +00:00
bellard
46803f05e0 fixed local extern handling - fixed '!' with symbols 2002-08-29 21:57:41 +00:00
bellard
41391fbb20 added linux define - added __FUNCTION - fixed spaces parsing - defined special macros 2002-08-29 21:16:24 +00:00
bellard
f946dffd33 suppressed section_ptr - fixed constant string allocation 2002-08-18 14:34:57 +00:00
bellard
53834650fb moved ELF stuff to tccelf.c - fixed #include and #line parsing - removed size limit on strings - added support for bound checking in generated executables - fixed -I include order - fixed incorrect function displayed in runtime error - fixed lvalue type when saved in local stack 2002-08-18 13:22:55 +00:00
bellard
7ac43f6d19 better DLL generation - added size to all ELF symbols - dynamic hash table size 2002-07-27 23:08:04 +00:00
bellard
18e40e1a25 add stripping if not debug mode - moved debug and bound check init 2002-07-27 15:38:21 +00:00
bellard
519ec30bcf added __start_x and __stop_x symbol generation - fp_hw fix for dynamic executables 2002-07-27 15:18:33 +00:00
bellard
9b48237795 use data_offset in sections instead of pointer to ease section reallocation - relocated .stabs and .bounds sections - fixed char constants casts - fixed implicit cast to unary plus - fixed type for string constants 2002-07-27 14:05:37 +00:00
bellard
540cd6fde7 fixed preprocessor expression parsing 2002-07-26 22:59:19 +00:00
bellard
b12e91aa01 fixed command line help - added -B option - moved bcheck.c outside of tcc 2002-07-24 22:10:59 +00:00
bellard
6cdecbe4e6 added runtime library - fixed more relocations 2002-07-22 23:37:39 +00:00
bellard
9051cc21af better elf output - generalized dynamic array use 2002-07-22 00:20:38 +00:00
bellard
7b54a53e08 added archive support - better ELF output - fixed symbol relocation - added COMMON symbol handling 2002-07-18 00:51:11 +00:00
bellard
a50e58e5ba more consistent command line handling 2002-07-15 22:17:02 +00:00
bellard
61a1599052 added object file reading support 2002-07-15 21:33:00 +00:00
bellard
3cd4a7c4f9 better elf output - fixed float relocation data 2002-07-14 23:00:39 +00:00
bellard
6cd36b1285 added better relocation support (needed for file output) 2002-07-14 14:38:33 +00:00
bellard
12f3f3592c better file output - fixed order of variable declaration if initializer is present 2002-07-13 17:23:25 +00:00
bellard
17cbb388d3 optimized bound checking 2002-07-13 15:55:38 +00:00
bellard
3d3e2372c5 added char/short types in lvalues to fix cast problems - added gcc style variadic macros - fixed zero arg macros - refuse extra comma at end of function call - fixed unused logical operation result case 2002-07-13 11:17:19 +00:00
bellard
4e5a85292b correct line numbers when reparsing - added explicit TokenString structure - better logic for search path 2002-06-30 17:34:30 +00:00
bellard
8f64c13c40 added libtcc - fixed spill reg bugs 2002-05-13 23:00:17 +00:00
bellard
7f4fcf1216 added tcc finite math function to avoid portability problems 2002-03-17 11:32:48 +00:00
bellard
22ce5f248a added floating point constant propagation 2002-03-17 11:15:05 +00:00
bellard
4226681d36 added optionnal bound check compile - fixed error reporting 2002-03-03 22:45:55 +00:00
bellard
5a50e73980 added CIL target 2002-02-10 16:14:03 +00:00
bellard
5bf9559e9e bound check fix 2002-01-26 19:13:31 +00:00
bellard
6e2d1a809a increased hash table sizes - added cdecl and stdcall attributes - #elif fix - empty args in macro fix - benchmark option 2002-01-26 18:05:29 +00:00
bellard
0b8f352cb7 fixed -D option 2002-01-13 11:07:19 +00:00
bellard
9c06595a1e win32 defines + new internal file layer 2002-01-12 16:39:35 +00:00