aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * Add input files/libs and reloc_output switch to TCCStateKirill Smelkov2010-06-204-1/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | files[0], and reloc_outpu will be needed for (upcoming in the next patch) "compute default outfile name" refactored into libtcc function. Also, since for symmetry and from libification point of view, it makes some sense to also put all information about what was given as input to compilation into TCCState, let's not only put files[0], but all files and all libraries given explicitely by user. One point: I've used bitfield for reloc_output & trimmed down output_type to 8 bits so that TCCState stays the same in size, and also access to output_type is (hopefully) is not slower. By the way -- as of today, sizeof(TCCState) on i686-pc-linux-gnu is 2884 bytes...
| * tcc: Fix typo in error (it's '%s', not '%s)Kirill Smelkov2010-06-161-1/+1
| |
| * chmod a-x i386-gen.cKirill Smelkov2010-06-161-0/+0
| | | | | | | | No need to keep executable bit on plain C source.
| * .gitignore += *.o *.aKirill Smelkov2010-06-121-0/+2
| | | | | | | | | | Ignores libtcc.o, libtcc.a and a bunch of other files (see previous patch for details)
| * .cvsignore -> .gitignoreKirill Smelkov2010-06-121-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We no longer use CVS, so let's teach Git about what files to ignore... ... though doing `git status` after make + `make test` still gives untracked content: # Untracked files: # (use "git add <file>..." to include in what will be committed) # # alloca86-bt.o # alloca86.o # bcheck.o # libtcc.a # libtcc.o # libtcc1.a # libtcc1.o # tcc.o See next patch about this stuff.
* | tccgen: Revert yuanbin's recent patchesgrischka2010-06-211-19/+17
| | | | | | | | | | This reverts commits 670993..d35138 Maybe these commits fixed something but also seemed to cause problems.
* | implemented C99 for loop with variable declarationClaudio Bley2010-06-211-4/+37
| |
* | Revert "Complain for static fct declared w/o file scope"grischka2010-06-151-3/+0
| | | | | | | | | | | | | | | | | | | | This reverts commit e9406c09a3212ab3f120412a6bbdacb0cdd25deb. We don't want errors for static local function pointers, such as: { static void (*fn)(); ... }
* | Fix "Fix bashims in configure ..." for MSYSgrischka2010-06-151-17/+9
| | | | | | | | Fixes commit dc265feb63c70a1a76fb566a6c05fe62246b65a0
* | Fix last commits: remove CRLF, chmod 644 tccgen.cgrischka2010-06-151-24/+24
| |
* | tccgen: skip ')' in front of ',' for initializeryuanbin2010-06-131-5/+14
| |
* | tccgen: skip fields from same unionyuanbin2010-06-131-2/+8
| |
* | tccgen.c: skip fields from same unionyuanbin2010-06-131-26/+5
| |
* | tccgen: initial the last member of unionyuanbin2010-06-111-1/+1
| |
* | tccgen: initial last member of unionyuanbin2010-06-111-20/+28
|/
* Fix bashims in configure and gcctestsuite.sh.Thomas Preud'homme2010-05-262-9/+19
| | | | | | | | configure and gcctestsuite.sh shell scripts contains bashisms although being bourne shell script. This patch fixes the following bashisms: * Use of $RANDOM variable (replaced by reading in /dev/urandom) * Use == in tests instead of just = * Use $[] for arithmetic computation istead of $(())
* don't discard SHT_((PRE)INIT|FINI)_ARRAY sectionsDaniel Glöckner2010-05-152-1/+9
|
* ARM: add support for R_ARM_V4BXDaniel Glöckner2010-05-152-1/+11
|
* ARM: implement rt_get_caller_pcDaniel Glöckner2010-05-141-0/+44
|
* ARM: allow jumps > 32MB on -runDaniel Glöckner2010-05-143-3/+19
| | | | This is needed to reach tinycc's PLT from the compiled program.
* append ULL to big constantsDaniel Glöckner2010-05-131-3/+3
|
* ARM: use uint32_t for opcodesDaniel Glöckner2010-05-132-43/+44
| | | | fixes cross compiling on x86_64
* Revert "tccpp: Allow local labels to start with a dot"Daniel Glöckner2010-05-062-10/+1
| | | | | | This reverts commit f740485a5ab2ecef741bf1161b9feeea9c18cac0. It breaks access to structure elements starting with L
* Add nan, snan and inf float constantsThomas Preud'homme2010-05-062-2/+32
|
* Don't load libtcc1 on arch where it doesn't existThomas Preud'homme2010-05-012-3/+8
| | | | | | | ARM architecture doesn't have any libtcc1 implementation but tcc load libtcc1.a in all case. This patch add a conditional preprocessor instruction to load libtcc1.a only when there is an implementation for the target architecture.
* Link alias symbols togetherThomas Preud'homme2010-05-011-0/+20
| | | | | | | | Make sure alias symbols resolve to the same address in program .bss or .data section. This ensure for example that if a program reference environ (via an extern char **environ declaration) and the libc change its value via the __environ alias after the R_ARCH_COPY relocation have been performed, then the program will see the new value.
* reverse another unnecessary changeHenry Kroll III2010-04-291-1/+1
| | | | -m32 is set elsewhere now.
* recursive Makefiles should use $(MAKE), not "make"Henry Kroll III2010-04-291-3/+3
| | | | add clean: target for lib/tcc1.def
* remove superfluous LIBS=. (leftover from work on --disable-statc)Henry Kroll III2010-04-281-1/+0
|
* Summary of commits + added some brief comments to MakefileHenry Kroll III2010-04-261-5/+10
| | | | | | | | | | | | | | | | | | | Summary of what was changed or added so far: These won't work on Win32 * --disable-static option builds libtcca.so.1.0 and associated simlinks. This replaces libtcca.a, which is a static library with a dynamic one. * --with-selinux option uses mmap to enable tcc -run to work with Selinux. * attempt to build tcc1.def on i386 / x86_64 when --enable-cross is used. If successful, this gets around the "_start not found" or "_winstart not found" messages when i386-win32-tcc is run on these systems. I say "if" because it gave me fits of trouble on my system and not all others have been tested yet. tcc1.def is not a real .def file by the way, but it works, so it's kind of a dancing bear at this point. We're not concerned that it's getting the steps wrong. We're just happy it's not eating us for lunch.
* don't build tcc1.def on Windows.Henry Kroll III2010-04-261-11/+11
| | | | | I think the Windows build portion of the Makefile already provides their own version. If not, we can remove the check.
* Makefile fixup:Henry Kroll III2010-04-252-23/+26
| | | | | | | | | | | | * additional make target for lib/tcc1.def on non-win32 builds tcc1.def was formerly lib/libtcc1.a but has bee made into its own Makefile target, tcc1.def * use mv instead of cp on config.h this fixes a mistake I made which caused Makefile to rebuild all targets every time * make links from libtcc.so.1.0 to libtcc.so.1 and libtcc.so
* make --enable-cross work properly on x86_64Henry Kroll III2010-04-251-3/+8
| | | | | merge more changes from Fedora spec file into Makefile I did a lot of reading on Makefiles. It should be a lot less hacked now that I got rid of my temporary cross-build script. I had to build i386-win32-tcc as 32 bit in order to use it to build the windows version of libtcc1.a and move that into lib directory. Still testing, but it does build windows fib.exe smoothly now and generates shard lib, libtcc.so.1.0 and test links against it.
* Merge branch 'mob' of ssh://repo.or.cz/srv/git/tinycc into makefileHenry Kroll III2010-04-250-0/+0
|\
| * reverse make win32 version of libtcc1.a patchHenry Kroll III2010-04-242-32/+37
| |
* | remove make_libtcc1_win32.sh shell scriptHenry Kroll III2010-04-242-32/+37
|/ | | | and merge commands into Makefile
* make win32 version of libtcc1.a for cross-compiler on x86 / x86_64Henry Kroll III2010-04-242-4/+28
|
* put tcc in /usr/lib64/tcc on distros that have itHenry Kroll III2010-04-241-1/+1
|
* make --with-selinux work with libtcc, tooHenry Kroll III2010-04-243-34/+35
|
* add --disable-static option to build libtcc.so instead of libtcc.aHenry Kroll III2010-04-242-10/+33
| | | | for distros that want static libs
* fix typo in configureHenry Kroll III2010-04-241-1/+2
|
* i386-win32-tcc fails to build a valid win32 executable if builtHenry Kroll III2010-04-231-1/+1
| | | | | | | | | on x86_64 using --enable-cross. The easiest way to fix this is to put -m32 in the Makefile. Committer: Henry Kroll <henry@comptune.com> Committer: Henry Kroll <henry@comptune.com>
* Use mmap instead of exec mem for Selinux machines. Fixes crash on Fedora.Henry Kroll III2010-04-202-5/+41
|
* Replace malloc+strcpy by tcc_strdup in ld_load_file_listThomas Preud'homme2010-04-201-9/+3
|
* Fix "already done" test in libname_to_filename()Thomas Preud'homme2010-04-201-1/+1
| | | | if "(libname == '\0')" should be instead "if (libname != '\0')"
* Delete unused vtop_saved variable in unary_typeThomas Preud'homme2010-04-201-2/+0
|
* Clean changes introduced by 47abdbdThomas Preud'homme2010-04-203-89/+86
| | | | | | | | | | | | * Replace the save/load_buffer_state by a dynarray approach: - Filename and libname are added to a dynarray when first encountered - Load repeatedly the files in the dynarray until no new undefined symbol are encountered * Replace snprintf by sprintf in libname_to_filename * Use tcc_fileextension in filename_to_libname * Introduce a tcc_strcpy_part fonction to copy only a subset of a string * Move new_undef_syms declaration from tcc.h to tccelf.c
* WinCE PE subsystemTimo VJ Lahde2010-04-191-0/+2
|
* PE ARM: jump IAT arm codeTimo VJ Lahde2010-04-191-2/+13
|
* libtcc.c: fix compilation failure (inconsistent tcc_add_file_internal)Sergei Trofimovich2010-04-192-1/+2
| | | | | | | | | gcc -o libtcc1.o -c lib/libtcc1.c -O2 -Wall libtcc.c: At top level: libtcc.c:1063: error: static declaration of 'tcc_add_file_internal' follows non-static declaration tccelf.c:2915: note: previous implicit declaration of 'tcc_add_file_internal' was here Signed-off-by: Sergei Trofimovich <st@anti-virus.by>