Fellow developers,
I was wondering if anyone wanted to form a compiler-writing group with
the purpose of coming up with a C99 compiler that runs under FreeDOS. I
have some ideas as to how to get this accomplished, but would like to
have input from my fellow programmers from the start. We could pass
around code and patches off-list.
A good design for a C99 compiler would have the following
subprograms/phases, with a master orchestrating them all:
1. Preprocessor
2. C99-to-virtual machine language translator/semantic analyzer
3. Virtual machine language optimizer
4. Assembly code generator
5. Assembler
6. Linker/Loader
There are free preprocessors, assemblers, and linkers available, but it
would be neat if we could write them from scratch.
A lot of the translating can be table-driven. It can be tied to the
processor as well; for example, the code generator can output
les ax,[bp-17]
mov dx,es
to move a four-byte variable into the registers on a i8086, but
mov eax,[bp-17]
to do the same task on a i386 or newer CPU.
The tools flex and bison can be used to produce lexical analyzers and
LALR-style parsers respectively, and both output files in C; the project
would include the C files so that those who don't have those tools can
compile the code. The tools are open-source and available from GNU.
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Freedos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-devel