724425addffix for a -dumpversion option: move it before -dD Options must be sorted and a long one must preceed a short one. What was before: tcc -dumpversion tcc: error: invalid option -- '-dumpversion'
seyko
2015-03-23 20:58:27 +03:00
8f6390061dfix for: x86_64-tcc compiled by i386-tcc is wrong A test program (must be compiled by the above version of the tcc):
seyko
2015-03-23 19:24:55 +03:00
8dbe129ab7fix a gcc compiler warning for the previous commit mark a constant as long long (or -std=gnu99 is needed)
seyko
2015-03-23 16:36:09 +03:00
c2efd7c53brevert a commit: Work around for the issue TCC doesn't handle -2147483648 properly because a tcc handle now -2147483648 properly. Look a commit: Make integer constant parsing C99 compliant
seyko
2015-03-23 15:31:10 +03:00
bd531ec1fdA right fix for the array in struct initialization w/o '{' Parse a type if there is only one '(' before a type token. Otherwise a recursion will perform a job.
seyko
2015-03-23 08:27:16 +03:00
367bb6f4b7Revert of the commit: fix for the array in struct initialization w/o '{', case 2 A right solution for this problem will follow.
seyko
2015-03-23 07:40:41 +03:00
aba2d648f4quick fix for the native tcc on debian/ubuntu
seyko
2015-03-22 18:05:29 +03:00
63d068d3f2skip 73_arm64,test on ARCH=x86-64: it fails on this ARCH
seyko
2015-03-20 16:01:06 +03:00
78c076a70frestore a linux 2.4.26 kernel compilation (commit 5bcc3eed7b correction)
seyko
2015-03-20 10:44:26 +03:00
e3851d233fcorrection for the previous commit use "x86-64" as a directory name for the libtcc1.a installation when cross-compiling.
seyko
2015-03-20 09:27:59 +03:00
cfaa165e62libtcc1.a while "configure --enable-cross" build and install libtcc1.a for i386, x86_64 and arm64 (libtcc1.a for x86_64 was not installed on i386)
seyko
2015-03-20 08:52:01 +03:00
3dba9cc13d"configure --enable-cross" on x86: build a libtcc1.a for x86_64
seyko
2015-03-19 13:07:02 +03:00
e2650608cdfix to allow build tcc by build-tcc.bat move call to print_defines() from tcc.c to the libtcc.c define a print_defines() as a ST_FUNC
seyko
2015-03-19 08:07:35 +03:00
aa812e8745Convert some lines from ISO-8859-1 to UTF-8.
Edmund Grimley Evans
2015-03-08 22:07:50 +00:00
5de8b5638f.gitignore: Add lib/arm64.
Edmund Grimley Evans
2015-03-10 22:38:26 +00:00
0e79df499atccgen.c: (!nocode_wanted) -> (nocode_wanted) in arm64 part.
Edmund Grimley Evans
2015-03-10 22:37:36 +00:00
5bcc3eed7bAdd some missing nocode_wanted guard
Thomas Preud'homme
2015-03-10 23:23:00 +08:00
68605ab4d4lib/Makefile: Partial revert of 896a0c881a.
Edmund Grimley Evans
2015-03-10 14:08:42 +00:00
4ba7e5dc5aA correction for the commit: revert a grischka patch: gdb refused to know "main" keep revert (check SHF_ALLOC) only for x86 target and keep a grishka patch for other targets
seyko
2015-03-10 14:21:14 +03:00
896a0c881adon't use a *-tcc to compile *.S files for ARM* A tcc for ARM* don't have an assembler. This is partial reverse of the commit build-libtcc1-by-tcc: use a new tcc to compile a libtcc1.c and alloca.S
seyko
2015-03-10 13:54:12 +03:00
87ec08ecc8A native tcc for MSYS (Windows) must be i386-win-tcc.exe and not i386-tcc.exe i386-tcc.exe is a compiler for i386 Linux. A HOST_OS variable in Makefile is introduced and used to select a native compiler (which one to name as tcc.exe)
seyko
2015-03-10 13:39:26 +03:00
25b2779c3dx86-64: Fix stdarg for large non-float structs
Michael Matz
2015-03-09 03:54:33 +01:00
2eb4f4a3baRemove incorrect comment
Michael Matz
2015-03-09 01:33:42 +01:00
0ecee0072dFind libtcc1.a on arm32
Michael Matz
2015-03-09 00:47:27 +01:00
50899e30abFix stack overwrite on structure return
Michael Matz
2015-03-09 00:19:59 +01:00
d73b488401arm64: Implement __clear_cache.
Edmund Grimley Evans
2015-03-08 00:10:44 +00:00
03303628c7tests/Makefile: Quote to avoid: /bin/sh: 1: [: !=: unexpected operator
Edmund Grimley Evans
2015-03-07 18:10:45 +00:00
d854dede03arm64: Optimise some integer operations with a constant operand.
Edmund Grimley Evans
2015-03-07 17:03:51 +00:00
9163393476arm64-gen.c: In load(), do not sign-extend 32-bit VT_CONST.
Edmund Grimley Evans
2015-03-07 17:29:54 +00:00
8d4c861144fix for the array in struct initialization w/o '{', case 2 a test program:
seyko
2015-03-07 09:40:12 +03:00
238e760a29Add __builtin_return_address.
Edmund Grimley Evans
2015-03-06 21:01:14 +00:00
8764993c0dMakefile: install tcc$(EXESUF) as symlink to the $(ARCH)-tcc
seyko
2015-03-06 17:13:45 +03:00
65a4fbd1d4Makefile: add dependencies for $($(I386_CROSS)_LINK), ...
seyko
2015-03-06 16:19:10 +03:00
883aafc6bbMakefile leftover of rev 44c6e99
Roy
2015-03-06 10:25:47 +08:00
d9b87c087cfixing decl_initializer() for size_only: don't eat ')' a test program:
seyko
2015-03-05 20:18:25 +03:00
4b92dbf923Add a dependency for a PROGS and TCCLIBS to a Makefile
seyko
2015-03-05 16:39:25 +03:00
44c6e992bdFix compiling in MinGW/MSYS
Roy
2015-03-05 09:12:42 +08:00
3fb8b14806tccelf.c: File path component is "arm64", not "ARM64".
Edmund Grimley Evans
2015-03-04 19:43:29 +00:00
664c19ad5epartial revert of the commit 4ad186c5ef A test program:
seyko
2015-03-04 16:25:51 +03:00
bfb7b0d959--enable-tcc32-mingw option: build windows version on linux with i386-win-tcc --enable-tcc64-mingw option: build windows version on linux with x86_64-win-tcc
seyko
2015-03-04 12:02:13 +03:00
48d12e42adgcc options and mingw: move a gcc options detection from a makefile to the configure + define XCC and XAR if mingw32 defined + use XCC and XAR in lib/Makefile if defined Try "./configure --enable-mingw32; make". This must work
seyko
2015-03-04 11:47:52 +03:00
54fc439e9ean unification of the tcc cross names for a windows produce a i386-win-mingw32-tcc i386-win-tcc x86_64-win-mingw32-tcc x86_64-win-tcc arm-win-mingw32ce-tcc arm-win-tcc
seyko
2015-03-04 11:19:39 +03:00
1cbb4d322bbuild-libtcc1-by-tcc: use a new tcc to compile a libtcc1.c and alloca.S This will allow to build a libtcc1.a even if a bootstrap compiler don't support a target arch.
seyko
2015-03-04 11:08:16 +03:00
b8925960eccorrect a DllMain() declaration in dllcrt1.c and dllmain.c There is a DllMain() declaration in the mingw-runtime-4.0.3.1 and it differs from a tcc one.
seyko
2015-03-03 22:51:13 +03:00
351e2ec334add declaration of the "double trunc (double _x)" and winsock2.h This allow to build a windows version of the nimrod compiler.
seyko
2015-03-03 22:41:55 +03:00
4b61f7f04bA lrint functions in win32/include/math.h are rewrittem because tcc can't handle "t" constraint
seyko
2015-03-03 22:38:31 +03:00
dfbb00c106wincrt1.c: add definition of the __TRY__ if not defined Some i686-pc-mingw32-gcc don't know about __TRY__
seyko
2015-03-03 22:35:33 +03:00
859ce5e47fReport a mingw as a execution environment instead of the Win32, Win64, WinCE when executing "tcc -v". Example $ ./i386-win-tcc -v tcc version 0.9.26 (i386, mingw) instead of the tcc version 0.9.26 (i386, Win32)
seyko
2015-03-03 22:30:24 +03:00
2e6626a4b3Don't add a slash to the install path of the tcc in display_info()
seyko
2015-03-03 21:41:22 +03:00
d70440b406A 32/64 bit tcc on linux: an arch specific path for libtcc1.a Don't use /usr/local/lib/tcc/libtcc1.a for i386 and x86_64 A $(tccdir)/i386 directory was used to install a libtcc1.a but only when cross compiling. And no x86_64 directory. And this directory location was unknown inside tccelf.c
seyko
2015-03-03 18:34:22 +03:00
43e4a406b4Disable floating-point test for ARM soft-float
seyko
2015-03-03 17:28:13 +03:00
774f0611ccarm-unused-warnings: remove problems with defined but unused wariables
seyko
2015-03-03 17:16:52 +03:00
6cbf4fb740tcc_add_runtime() for a CONFIG_USE_LIBGCC case: reducing a complexity
seyko
2015-03-03 17:11:18 +03:00
cd4f3d962dx86_64-win-tcc elfinterp: a bug correction
seyko
2015-03-03 17:05:44 +03:00
2d83ec7aa3lddir-on-x86-64: let CONFIG_LDDIR=lib64 by default if TCC_TARGET_X86_64 This is done for the case when CONFIG_LDDIR is not configured. Example: ./configure --enable-cross
seyko
2015-03-03 16:37:44 +03:00
b5f88b593aTurn on a implicit-function-declaration warning by default.
seyko
2015-03-03 16:32:25 +03:00
7f36abd3f2x86_64-tcc and libtcc1.c: size_t definition is needed for a x86_64-tcc to parse memset()
seyko
2015-03-03 16:29:00 +03:00
e374a733d6-std=c99 option for the tcc: allow to use a tcc as a reference compiler for "make test" tcc will igmore this option.
seyko
2015-03-03 16:25:02 +03:00
4c8ffb353dremove a gcc warning for bcheck on x86_64 arch: conversion to pointer from integer of different size
seyko
2015-03-03 16:18:24 +03:00
20074d8862Use a display_info() to output a header of the tcc help listing
seyko
2015-03-03 16:08:33 +03:00
2437ccdc76A partial reverse for commit eda2c756ed
seyko
2015-03-03 15:51:09 +03:00
6fd4e5bacea void to void cast. Allow tcc to compile the following program /////// void func1() {} void func2() { return func1(); } ////// gcc accepts this program
seyko
2015-03-03 15:39:57 +03:00
09feeca5dfa statement expressions with a pointer return type A test program: ////////////// int main() { void *p = ({ 0 ; ((void *)1); }); } ///////////// Porblem is introduced in a commit a80acab: Display error on statement expressions with complex return type This error is exposed when compiling a linux 2.4.26. tcc 0.9.23 can sucessfully compile this version of the linux.
seyko
2015-03-03 15:29:14 +03:00
1a1e9548fbiitialisation of the empty struct Current tcc don't understand an initialization of the empty struct This problem was found trying to compile a linux kernel 2.4.26 which can be compiled by tcc 0.9.23
seyko
2015-03-03 15:15:48 +03:00
bbf8221ec3tcc don't understand am extern array of structs. A regression was found trying to compile a linux kernel 2.4.26 which can be compiled by tcc 0.9.23
seyko
2015-03-03 15:00:13 +03:00
a429d40f06tcc_free(table_ident) in preprocess_new() if table_ident != NULL
seyko
2015-03-03 14:54:46 +03:00
e2a8fd4520tcc_undefine_symbol(): free an alloced symbol
seyko
2015-03-03 14:50:41 +03:00
8d10c5788fAdd a debug info when a #line directive is handled. The problem was: a debug info for the file which contain a #line directive (for example a preprocessed one) was wrong.
seyko
2015-03-03 14:46:44 +03:00
09d4e4f408Revert a grischka patch: gdb refused to know "main" It is a strange patch because before this commit a gdb is working well and after this commit there is exactly the same problem on Linux: gdb refuses to know "main"
seyko
2015-03-03 14:39:27 +03:00
252a151fc6pp-many-files: don't drop a preprocessor defines when tcc going to preprocess a next file in the same pass like tcc -E one.c two.c three.c -o combined.i This will allow to speed up a compilation process by using a commamd like tcc -E *.c | tcc -o program.exe -xc -
seyko
2015-03-03 14:31:47 +03:00
b7b9f9f511A gcc preprocessor option -dD added With this option on a defines are included into the output (inside comments). This will allow to debug a problems like:
seyko
2015-03-03 14:25:57 +03:00
40418f87c7Move a line_ref variable from tcc_preprocess() function into struct BufferedFile. This id needed for a right ouput in other places, precisely to calculate a number of empty lines which are waiting to output.
seyko
2015-03-03 14:15:28 +03:00
5e3e321474A preprocessor should Interpret an input line "# NUM FILENAME" as "#line NUM FILENAME"
seyko
2015-03-03 14:06:05 +03:00
1706d2254barm64-gen.c: Improve generation of stack offsets.
Edmund Grimley Evans
2015-03-02 20:51:03 +00:00
1d41da9590arm64-gen.c: Rename some functions and add comments.
Edmund Grimley Evans
2015-03-02 20:45:58 +00:00
86e8dcd5e2arm64: Improve constant generation, with tests.
Edmund Grimley Evans
2015-03-02 20:39:28 +00:00
883fd365c7arm64-gen.c: Better explanation of relocation choice.
Edmund Grimley Evans
2015-03-01 11:31:10 +00:00
fc119f984073_arm64.c: Avoid taking address of return value.
Edmund Grimley Evans
2015-02-26 12:27:00 +00:00
8329facdfaAdd 73_arm64 for testing some arm64 things, mostly PCS.
Edmund Grimley Evans
2015-02-25 22:48:25 +00:00
a4d43618fbarm64-gen.c: In gen_va_arg, handle the remaining HFA cases.
Edmund Grimley Evans
2015-02-25 22:38:56 +00:00
36bb8994ddRelicensing TinyCC
Edmund Grimley Evans
2015-02-25 07:52:39 +00:00
97e08be344tests/tcctest.c: Test COMPAT_TYPE(char *, signed char *).
Edmund Grimley Evans
2015-02-24 19:35:31 +00:00
40f7e11c53tccgen.c: Make sure that gen_op always returns an rvalue.
Edmund Grimley Evans
2015-02-20 22:18:41 +00:00
6d055312a2aarch64: Fix -run.
Michael Matz
2015-02-22 05:59:06 +01:00
b14ef0e24bAdd arm64 (AArch64) as a target architecture.
Edmund Grimley Evans
2015-02-13 18:58:31 +00:00