History log of /tinycc/tcc-doc.texi (Results 1 - 25 of 78)
Revision Date Author Comments
# ef42295f 17-Jan-2020 gr <gr@gr-laptop.(none)>

tccrun.c: standalone backtraces with -bt[N] or -b

This makes it possible to get backtraces with executables
(including DLLs/SOs) like we had it already with -g -run.

Option -b i

tccrun.c: standalone backtraces with -bt[N] or -b

This makes it possible to get backtraces with executables
(including DLLs/SOs) like we had it already with -g -run.

Option -b includes -bt, and -bt includes -g.

- new file lib/bt-exe.c: used to link rt_printline and the
exception handler from tccrun.c into executables/DLLs.

- new file lib/bt-log.c: provides a function that may be
called from user code to print out a backtrace with a
message (currently for i386/x86_64 only):

int (*tcc_backtrace)(const char *fmt, ...);

As an extra hack, if 'fmt' is prefixed like "^file.c^..."
then the backtrace will skip calls from within 'file.c'.

- new file lib/bt-dll.c: used on win32 to link the backtrace
and bcheck functions with the main module at runtime

- bcheck.c: now uses the tcc_backtrace function from above

- tccgen.c: minor cleanups

- tccelf.c: stab sections get SHF_ALLOC for easy access.
Also in relocate_section(): 64bit relocations for stabs
in DLLs cannot work. To find DLL addresses, the DLL base
is added manually in tccrun.c via rc.prog_base instead.

- tccpe.c: there are some changes to allow merging sections,
used to merge .finit_array into .data in the first place.

- tccpp.c: tcc -run now #defines __TCC_RUN__
also: refactor a line in tal_realloc that was incompatible
with bcheck

- tcctest.c: fixed a problem with r12 which tcc cannot preserve
as well as gcc does.

- tests2/112_backtrace.c: test the feature and the bcheck test18
that previously was in boundtest.c

show more ...


# 38776187 15-Jan-2020 herman ten brugge <hermantenbrugge@home.nl>

Update bound checking code.

Add __attribute__((constructor)) to __bounds_init.
- remove tcc_add_bcheck from i386-link.c and x86_64-link.c
- add simplified tcc_add_bcheck to tccelf.c

Update bound checking code.

Add __attribute__((constructor)) to __bounds_init.
- remove tcc_add_bcheck from i386-link.c and x86_64-link.c
- add simplified tcc_add_bcheck to tccelf.c
- Update tccrun.c to call constructor/destructor.
Set dynsym sh_info to number of local symbols in tccelf.c
Reduce stack size when bounds checking is enabled.
Added variable TCC_LIBBCHECK for windows support.
Add signal stack to detect stack overflow.
Add all & parameters in lbound_section and remove them if not used.
Close fd in tcc_relocate in tccrun.c
Fix section type constructor/destructor in tccelf.c
Add check code in tests/boundtest.c for mem/str functions.
Remove -ba from documentation.
Add bounds check signal info in documentation.

bcheck.c:
- Fix initial_pool alignment.
. Fix printf statements.
. Add prototypes for all external interface functions.
- Add TCC_BOUNDS_WARN_POINTER_ADD environment variable.
. Add ctype and errno data.
- Fix alloca when multithreading is used.
- Add lock for __bound_checking and __bound_never_fatal.
- Catch pthread_create and use locks when called.
- Detect in loaded in shared lib and use locks when found
- Use spin locks instead of semaphore locks.
- Make spin locked code as small as possible.
- Fix mem/str functions checking.
- Fix overlap checking mem/str functions.

show more ...


# 39c0ff31 12-Dec-2019 herman ten brugge <hermantenbrugge@home.nl>

Add new bounds checking functions.

The following functions are now also bounds checked:
memcmp, strncpy, strcmp, strncmp, strcat, strchr, strdup.

Add statistics code for bounds

Add new bounds checking functions.

The following functions are now also bounds checked:
memcmp, strncpy, strcmp, strncmp, strcat, strchr, strdup.

Add statistics code for bounds checking functions.
The statistics can be printed by settings environment variable
"TCC_BOUNDS_PRINT_STATISTIC".

Enabled more tests in test/Makefile.

show more ...


# 75145ddc 12-Dec-2019 herman ten brugge <hermantenbrugge@home.nl>

Add -ba option for bounds_checking


# 4d297d35 10-Dec-2019 herman ten brugge <hermantenbrugge@home.nl>

Add bound checking print heap


# 0edbed1d 21-Jul-2018 Jonathan Newman <jonathannewman314@gmail.com>

Implement __attribute__((nodecorate))

Prevent any decoration that would otherwise affect an exported
PE function. For example, given the following:

__declspec(dllexport) __stdca

Implement __attribute__((nodecorate))

Prevent any decoration that would otherwise affect an exported
PE function. For example, given the following:

__declspec(dllexport) __stdcall
int decorated(int arg) {
return 0;
}

__declspec(dllexport) __stdcall __attribute__((nodecorate))
int undecorated(int arg) {
return 0;
}

The following exported functions can now be seen in the DLL:
_decorated@4
undecorated

The attribute is recognised for all targets but only
affects PE codegen. I'm not sure whether this would be
useful for other targets; its intended use was to allow
the creation of a DLL matching an existing set of signatures.

show more ...


# 91bdb5a4 11-Jun-2018 Andrey Gursky <andrey.gursky@e-mail.ua>

Add linker's --export-dynamic flag alias

Since 9336fa7ae50ef60cb0049136a7831e7e8d94a20a --export-dynamic is
supported. Add this conventional flag as alias.


# 56018871 24-Sep-2017 Larry Doolittle <ldoolitt@recycle.lbl.gov>

Fix some spelling in documentation


# 5f33d313 20-Feb-2017 grischka <grischka>

tcc: re-enable correct option -r support

Forgot about it. It allows to compile several
sources (and other .o's) to one single .o file;

tcc -r -o all.o f1.c f2.c f3.S o4.o .

tcc: re-enable correct option -r support

Forgot about it. It allows to compile several
sources (and other .o's) to one single .o file;

tcc -r -o all.o f1.c f2.c f3.S o4.o ...

Also:
- option -fold-struct-init-code removed, no effect anymore
- (tcc_)set_environment() moved to tcc.c
- win32/lib/(win)crt1 minor fix & add dependency
- debug line output for asm (tcc -c -g xxx.S) enabled
- configure/Makefiles: x86-64 -> x86_64 changes
- README: cleanup

show more ...


# f34b1fea 16-Feb-2017 Steffen Nurpmeso <steffen@sdaoden.eu>

-Wl, --enable-new-dtags for DT_RUNPATH instead of DT_RPATH

Today by accident i had to deal with linker problems of some
software and found an issue that mentioned DT_RUNPATH, which
m

-Wl, --enable-new-dtags for DT_RUNPATH instead of DT_RPATH

Today by accident i had to deal with linker problems of some
software and found an issue that mentioned DT_RUNPATH, which
mentioned that DT_RPATH is legacy and searched for
$LD_LIBRARY_PATH, whereas the newer DT_RUNPATH is searched
thereafter. Completely unencrypted! Well. For what's it worth,
i for one am astonished because of course i want to override
$LD_LIBRARY_PATH, but it surely has its merites, smart people came
to the conclusion, did they.

The attached diff below seems to be sufficient to support
DT_RUNPATH instead of DT_RPATH with tcc(1). But i have no insight
in what --enable-new-dtags is supposed to change in addition, so
i wonder.

Ciao!

--steffen

libtcc.c | 2 ++
tcc-doc.texi | 4 ++++
tcc.h | 1 +
tccelf.c | 3 ++-
4 files changed, 9 insertions(+), 1 deletion(-)

show more ...


# 43d9a7de 13-Feb-2017 grischka <grischka>

updates & cleanups (tcc-doc/Changelog/TODO ...)

- tcc-doc.texi: commandline option info update
- Changelog/TODO: update
- tests/tcctest.py: removed
- tests/Makefile: weaktest fix

updates & cleanups (tcc-doc/Changelog/TODO ...)

- tcc-doc.texi: commandline option info update
- Changelog/TODO: update
- tests/tcctest.py: removed
- tests/Makefile: weaktest fixed
- tests/tests2: some files renamed and/or converted to unix LF
- configure/Makefile: --enable-static option (no dll on win32)
- win32/build-tcc.bat: msvc support
- win32/tcc-win32.txt: build info update
- win32/vs2015/: VS solution removed
- win32/include/tcc/tcc_libm.h: #include statement fixed
- tcc.c: -include <file> option help info
- .gitignore: cleanup

show more ...


# d2e2f423 22-Nov-2016 David Mertens <dcmertens.perl@gmail.com>

Implement gcc bitfield algorithm; add -mms-bitfields


# 3c68a8c6 22-Nov-2016 David Mertens <dcmertens.perl@gmail.com>

Minor grammar fixes to docs


# c5b9ae4e 01-Oct-2016 grischka <grischka>

Revert "-fnormalize-inc-dirs"

Too much code. gcc 3.x doesn't have that either.

This reverts commit 41785a0bf9d505a3647a10ddc330417f52fd4528.
This reverts commit 21665f433890e203

Revert "-fnormalize-inc-dirs"

Too much code. gcc 3.x doesn't have that either.

This reverts commit 41785a0bf9d505a3647a10ddc330417f52fd4528.
This reverts commit 21665f433890e2038626f0b3123b189a62a67dc9.

show more ...


# cf32bb88 01-Oct-2016 grischka <grischka>

Revert "--whole-archive support"

- would parse linker args in two different places
- would mess up "tcc -v ..." output:
tcc -v test.c
-> test.c
+> tes

Revert "--whole-archive support"

- would parse linker args in two different places
- would mess up "tcc -v ..." output:
tcc -v test.c
-> test.c
+> test.c
- would use function "tcc_load_alacarte()" to do the contrary of
what its name suggests.

This reverts commit 19a169ceb896f78205bc23b847938c58f14d1dda.

show more ...


# 03609051 05-Jul-2016 Vincent Lefevre <vincent@vinc17.net>

fix typo in -Wl,-rpath documentation

Signed-off-by: Vincent Lefevre <vincent@vinc17.net>


# 19a169ce 20-May-2016 seyko <seyko2@gmail.com>

--whole-archive support

A patch is implemented as suggested in tinycc-devel mail list.

From: Reuben Thomas
Date: Thu, 31 Jul 2014 16:52:53 +0100
Subject: [PA

--whole-archive support

A patch is implemented as suggested in tinycc-devel mail list.

From: Reuben Thomas
Date: Thu, 31 Jul 2014 16:52:53 +0100
Subject: [PATCH] Add --{no,}-whole-archive support

I resurrected the patch supplied to the mailing list in 2009
Since --whole-archive is a useful flag to get tcc working with
autotools, and of course in its own right, I suggest you have a look
at the patch and see if it is acceptable. I cannot see any suggestion
that it was actively rejected last time round, just no evidence that
it was ever added.

show more ...


# 21665f43 04-Apr-2016 seyko <seyko2@gmail.com>

describe -fnormalize-inc-dirs in tcc-doc.texi


# 89ad24e7 29-Jul-2015 gus knight <waddlesplash@gmail.com>

Revert all of my changes to directories & codingstyle.


# 47e06c6d 27-Jul-2015 gus knight <waddlesplash@gmail.com>

Reorganize the source tree.

* Documentation is now in "docs".
* Source code is now in "src".
* Misc. fixes here and there so that everything still works.

I think I got ev

Reorganize the source tree.

* Documentation is now in "docs".
* Source code is now in "src".
* Misc. fixes here and there so that everything still works.

I think I got everything in this commit, but I only tested this
on Linux (Make) and Windows (CMake), so I might've messed
something up on other platforms...

show more ...


# 41031221 27-Jul-2015 gus knight <waddlesplash@gmail.com>

Trim trailing spaces everywhere.


# dcb36587 12-Apr-2015 seyko <seyko2@gmail.com>

-fdollar-in-identifiers switch which enables '$' in identifiers

library Cello: http://libcello.org/ which uses `$` and several
variations of as macros.

There is also

-fdollar-in-identifiers switch which enables '$' in identifiers

library Cello: http://libcello.org/ which uses `$` and several
variations of as macros.

There is also RayLanguage which also uses it as a macro for a kind of
ObjC style message passing: https://github.com/kojiba/RayLanguage

This is a patch from Daniel Holden.

show more ...


# dec95935 09-Apr-2015 seyko <seyko2@gmail.com>

fix the bug #31403: parser bug in structure

- a warning: unnamed struct/union that defines no instances
- allow a nested named struct declaration w/o identifier
only wh

fix the bug #31403: parser bug in structure

- a warning: unnamed struct/union that defines no instances
- allow a nested named struct declaration w/o identifier
only when option -fms-extensions is used

show more ...


# 86c850fc 20-Feb-2015 Edmund Grimley Evans <Edmund.Grimley.Evans@gmail.com>

tcc-doc.texi: Explain VT_LLOCAL a bit better.

And delete the sentence about it being removed.


# d09a46d6 07-Apr-2014 Vincent Lefevre <vincent@vinc17.net>

corrected a typo


1234