|Opinions and experiences using LCC Win32 email@example.com (1998-05-30)|
|Re: Opinions and experiences using LCC Win32 firstname.lastname@example.org (1998-06-03)|
|lcc-win32 email@example.com (1998-06-03)|
|From:||firstname.lastname@example.org (Jacob Navia)|
|Date:||3 Jun 1998 01:59:30 -0400|
Lcc-win32: a Free compiler system for windows95/NT
Lcc-win32 consists of the following subsystems:
1) Compiler (pre-processor, compiler, assembler)
5) Resource compiler
6) Resource editor
7) Libraries and header files for compiling under windows
8) Utilities (librarian, import library generator for dlls, make, lburg)
The compiler is based in the work of C. Fraser and D. Hanson, 'A portable C
compiler'. It has been enhanced with a:
a) Peephole optimizer
b) Higher level optimizer
c) Modified to accept all standard windows keywords that are not part of the
ANSI standard: (_stdcall, _declspec, and other things like structured
d) There is full support for all MMX instructions, that are implemented as
C level pseudo functions that work in vectors of 64bit elements. There is
full support (using the same technique) for many intrinsics that use special
The generated code is very small, and it is roughly 10% slower only, in
normal applications (not benchmarks) than other compilers. In most applications
the speed of the generated code is the same.
As an example, here are the figures for the compilation of gcc 18.104.22.168 comparing
lcc-win32 to MSVC 4.2. (The source set of gcc 2.7 is around 10MB of C)
MSVC was set with optimization for size, since those optimizations correspond
to the ones lcc-win32 does.
Compilation Time: 153 sec 235 sec
Code size: 1 249 792 1 331 712 bytes
Image size: 1 605 632 1 810 432 bytes
gcc -O9 win32.c 47.8 sec 41.369 sec
link time: (stripped) 2.1 sec 3 sec
Time for Wedit to load all 88 source files (10MB): 7 sec
Time for msvc 4.2 to load all 88 sources: 16 sec
Time for wedit's debugger for loading all debug info and stop at 'main': 3 sec.
Time for MSVC's debugger to get into 'main' and stop: 9 sec.
The IDE for the compiler supports all important features of an IDE (real-time
syntax coloring, utilities like grep, diff, built in) and many many other
features not found in other IDEs: object file cross referencing, software
metrics, character string extraction into a table, automatic generation of
software documentation, versioning system).
The debug information used by the system corresponds to the NB09 standard as
published by Microsoft. This makes the generated code compatible with their
Note that lcc-win32 is a C compiler, not a C++ compiler.
Where can I find it?
lcc-win32 can be downloaded for free from:
The sources of the compiler are distributed with the package. For a full set of
sources (linker and other subsystems) you can buy them from the author.
Jacob Navia Logiciels/Informatique
41 rue Maurice Ravel Tel 01 22.214.171.124
93430 Villetaneuse Fax 01 126.96.36.199
Return to the
Search the comp.compilers archives again.