aboutsummaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authorbellard <bellard>2002-07-24 22:13:02 +0000
committerbellard <bellard>2002-07-24 22:13:02 +0000
commit840d197e8760d9954ffe64b551c563633532e138 (patch)
tree7995391e0f8f5cdbf3d7c336b22c7631432d3913 /README
parente9315f499bc138b67c2e241d8f4a1b167815c8b6 (diff)
downloadtinycc-840d197e8760d9954ffe64b551c563633532e138.tar.gz
tinycc-840d197e8760d9954ffe64b551c563633532e138.tar.bz2
update
Diffstat (limited to 'README')
-rw-r--r--README32
1 files changed, 0 insertions, 32 deletions
diff --git a/README b/README
index 4cc3924..86b4bd4 100644
--- a/README
+++ b/README
@@ -75,38 +75,6 @@ when doing 'make test'.
Please read tcc-doc.html to have all the features of TCC.
-Technical Description:
----------------------
-
-This is not my first C compiler (see my 'fbcc' compiler) but it
-contains the first C preprocessor I wrote. The project started as a
-joke to make the smallest C compiler. Then I expanded it torward
-ISOC99 compliance. This C compiler is particular because each feature
-was added while trying to be as simple and compact as possible. For
-example, no intermediate structure is used to store code or
-expressions.
-
-The TCC code generator directly generates linked binary code. It is
-rather unusual these days (see gcc for example which generates text
-assembly), but it allows to be very fast and surprisingly not so
-complicated.
-
-The TCC code generator is register based. It means that it could even
-generate not so bad code for RISC processors. On x86, three temporary
-registers are used. When more registers are needed, one register is
-flushed in a new local variable.
-
-Constant propagation is done for all operations. Multiplications and
-divisions are optimized to shifts when appropriate. Comparison
-operators are optimized by maintaining a special cache for the
-processor flags. &&, || and ! are optimized by maintaining a special
-'jump target' value. No other jump optimization is currently performed
-because it would require to store the code in a more abstract fashion.
-
-The types are stored in a single 'int' variable (see VT_xxx
-constants). It was choosen in the first stages of development when tcc
-was much simpler. Now, it may not be the best solution.
-
License:
-------