<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tinycc/Changelog, branch main</title>
<subtitle>Tiny C Compiler by Fabrice Bellard Git mirror of the final release by Bellard, discarding all changes after. The repository at https://repo.or.cz/tinycc.git has become untrustworthy. Also the tcc sources have become tainted with AI slop.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.datenwolf.net/tinycc/'/>
<entry>
<title>'long' review</title>
<updated>2017-09-24T16:57:48+00:00</updated>
<author>
<name>grischka</name>
<email>grischka</email>
</author>
<published>2017-09-24T16:57:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.datenwolf.net/tinycc/commit/?id=1443039416dd02750765efde1af35e31c8d41be3'/>
<id>1443039416dd02750765efde1af35e31c8d41be3</id>
<content type='text'>
add some features for more complete 'long' support

tcc.h:
- use LONG_SIZE=4/8 instead of TCC_LONG_ARE_64_BIT
tccgen.c:
- add ptrdiff_type, update size_type
- support shift and ?: operations
- support long enum types
- display 'long' from type_to_str
- nwchar_t is unsigned short on windows
- unrelated: use memcpy in init_putv for long doubles to avoid
  random bytes in the image (if tcc was compiled by gcc) for
  diff purposes.
tccpp.c:
- make parse_number return correct types
- improve multi-character-constants 'XX' 'abcd'
Changelog:
- update
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
add some features for more complete 'long' support

tcc.h:
- use LONG_SIZE=4/8 instead of TCC_LONG_ARE_64_BIT
tccgen.c:
- add ptrdiff_type, update size_type
- support shift and ?: operations
- support long enum types
- display 'long' from type_to_str
- nwchar_t is unsigned short on windows
- unrelated: use memcpy in init_putv for long doubles to avoid
  random bytes in the image (if tcc was compiled by gcc) for
  diff purposes.
tccpp.c:
- make parse_number return correct types
- improve multi-character-constants 'XX' 'abcd'
Changelog:
- update
</pre>
</div>
</content>
</entry>
<entry>
<title>Add note about native Windows bootstrap using Cygwin.</title>
<updated>2017-02-23T05:45:26+00:00</updated>
<author>
<name>Christian Jullien</name>
<email>Christian Jullien</email>
</author>
<published>2017-02-23T05:45:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.datenwolf.net/tinycc/commit/?id=576bee9a37cbe53227a27308a1b8ccc25e9b0e35'/>
<id>576bee9a37cbe53227a27308a1b8ccc25e9b0e35</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update ChangeLog</title>
<updated>2017-02-20T19:24:30+00:00</updated>
<author>
<name>Michael Matz</name>
<email>matz@suse.de</email>
</author>
<published>2017-02-20T19:24:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.datenwolf.net/tinycc/commit/?id=e209b7dac463e228525499153103ec28173ca365'/>
<id>e209b7dac463e228525499153103ec28173ca365</id>
<content type='text'>
with more things I remember having done :)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
with more things I remember having done :)
</pre>
</div>
</content>
</entry>
<entry>
<title>tcc: re-enable correct option -r support</title>
<updated>2017-02-20T17:58:08+00:00</updated>
<author>
<name>grischka</name>
<email>grischka</email>
</author>
<published>2017-02-20T17:58:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.datenwolf.net/tinycc/commit/?id=5f33d313c8a2455ff9036cd7f7028339bdbde622'/>
<id>5f33d313c8a2455ff9036cd7f7028339bdbde622</id>
<content type='text'>
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 &amp; add dependency
- debug line output for asm (tcc -c -g xxx.S) enabled
- configure/Makefiles: x86-64 -&gt; x86_64 changes
- README: cleanup
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &amp; add dependency
- debug line output for asm (tcc -c -g xxx.S) enabled
- configure/Makefiles: x86-64 -&gt; x86_64 changes
- README: cleanup
</pre>
</div>
</content>
</entry>
<entry>
<title>tcctools.c: integrate tiny_libmaker/_impdef</title>
<updated>2017-02-18T08:55:34+00:00</updated>
<author>
<name>grischka</name>
<email>grischka</email>
</author>
<published>2017-02-18T08:55:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.datenwolf.net/tinycc/commit/?id=2d3b9559bf569f137cefb7f8386a0dc58e33c81f'/>
<id>2d3b9559bf569f137cefb7f8386a0dc58e33c81f</id>
<content type='text'>
usage:
    tcc -ar [rcsv] lib files...
    tcc -impdef lib.dll [-v] [-o lib.def]

also:
- support more files with -c: tcc -c f1.c f2.c ...
- fix a bug which caused tcc f1.c f2.S to produce no asm
- allow tcc -ar @listfile too
- change prototype: _void_ tcc_set_options(...)
- apply -Wl,-whole-archive when a librariy is given
  as libxxx.a also (not just for -lxxx)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
usage:
    tcc -ar [rcsv] lib files...
    tcc -impdef lib.dll [-v] [-o lib.def]

also:
- support more files with -c: tcc -c f1.c f2.c ...
- fix a bug which caused tcc f1.c f2.S to produce no asm
- allow tcc -ar @listfile too
- change prototype: _void_ tcc_set_options(...)
- apply -Wl,-whole-archive when a librariy is given
  as libxxx.a also (not just for -lxxx)
</pre>
</div>
</content>
</entry>
<entry>
<title>win32: adjust new unicode support</title>
<updated>2017-02-18T08:51:23+00:00</updated>
<author>
<name>grischka</name>
<email>grischka</email>
</author>
<published>2017-02-18T08:51:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.datenwolf.net/tinycc/commit/?id=096125d963400951e0f160ced86416ef8c9c98b0'/>
<id>096125d963400951e0f160ced86416ef8c9c98b0</id>
<content type='text'>
- lib/Makefile: add (win)crt1_w.o

- crt1.c/_runtmain: return to tcc &amp; only use for UNICODE
  (because it might be not 100% reliable with for example
  wildcards (tcc *.c -run ...)

- tccrun.c/tccpe.c: load -run startup_code only if called
  from tcc_run(). Otherwise main may not be defined.  See
  libtcc_test.c

- tests2/Makefile: pass extra options in FLAGS to allow
  overriding TCC

Also:
- tccpe.c: support weak attribute.  (I first tried to solve
  the problem above by using it but then didn't)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- lib/Makefile: add (win)crt1_w.o

- crt1.c/_runtmain: return to tcc &amp; only use for UNICODE
  (because it might be not 100% reliable with for example
  wildcards (tcc *.c -run ...)

- tccrun.c/tccpe.c: load -run startup_code only if called
  from tcc_run(). Otherwise main may not be defined.  See
  libtcc_test.c

- tests2/Makefile: pass extra options in FLAGS to allow
  overriding TCC

Also:
- tccpe.c: support weak attribute.  (I first tried to solve
  the problem above by using it but then didn't)
</pre>
</div>
</content>
</entry>
<entry>
<title>updates &amp; cleanups (tcc-doc/Changelog/TODO ...)</title>
<updated>2017-02-13T18:03:29+00:00</updated>
<author>
<name>grischka</name>
<email>grischka</email>
</author>
<published>2017-02-13T18:03:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.datenwolf.net/tinycc/commit/?id=43d9a7de9b83f437d55c2cbc6e9625e3fafa5102'/>
<id>43d9a7de9b83f437d55c2cbc6e9625e3fafa5102</id>
<content type='text'>
- 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 &lt;file&gt; option help info
- .gitignore: cleanup
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- 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 &lt;file&gt; option help info
- .gitignore: cleanup
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert all of my changes to directories &amp; codingstyle.</title>
<updated>2015-07-29T20:57:12+00:00</updated>
<author>
<name>gus knight</name>
<email>waddlesplash@gmail.com</email>
</author>
<published>2015-07-29T20:53:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.datenwolf.net/tinycc/commit/?id=89ad24e7d63f7488c2796b30d41303f52663a8c4'/>
<id>89ad24e7d63f7488c2796b30d41303f52663a8c4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Reorganize the source tree.</title>
<updated>2015-07-27T20:03:25+00:00</updated>
<author>
<name>gus knight</name>
<email>waddlesplash@gmail.com</email>
</author>
<published>2015-07-27T20:03:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.datenwolf.net/tinycc/commit/?id=47e06c6d4e542e47fcbad69a78c2436a854a0779'/>
<id>47e06c6d4e542e47fcbad69a78c2436a854a0779</id>
<content type='text'>
 * 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...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 * 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...
</pre>
</div>
</content>
</entry>
<entry>
<title>Convert some lines from ISO-8859-1 to UTF-8.</title>
<updated>2015-03-11T07:30:03+00:00</updated>
<author>
<name>Edmund Grimley Evans</name>
<email>Edmund.Grimley.Evans@gmail.com</email>
</author>
<published>2015-03-08T22:07:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.datenwolf.net/tinycc/commit/?id=aa812e87455271d2b73e7f41832aee496fe81ee0'/>
<id>aa812e87455271d2b73e7f41832aee496fe81ee0</id>
<content type='text'>
perl -i -pe 'use Text::Iconv;
$c1 = Text::Iconv-&gt;new("utf-8", "utf-8");
$c2 = Text::Iconv-&gt;new("iso-8859-1", "utf-8");
if (!$c1-&gt;convert($_)) { $_ = $c2-&gt;convert($_); }' \
`find * -type f`
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
perl -i -pe 'use Text::Iconv;
$c1 = Text::Iconv-&gt;new("utf-8", "utf-8");
$c2 = Text::Iconv-&gt;new("iso-8859-1", "utf-8");
if (!$c1-&gt;convert($_)) { $_ = $c2-&gt;convert($_); }' \
`find * -type f`
</pre>
</div>
</content>
</entry>
</feed>
