Small C for I386 (IA-32)

This is a version of Ron Cain' Small C, which was hacked by Evgueniy Vitchev to work on Linux-i386.

Additional features are:

The compiler can be bootstrapped by using gcc in the following way:
  1. Build a stage 1 compiler:
    gcc -o smc386c1 smc386c.c
  2. Using the stage 1 compiler build a stage 2 compiler:
    Output filename? smc386c2.s
    Input filename? smc386c.c
    Input filename? <enter>
    There were 0 errors in compilation.

    gcc -o smc386c2 smc386c2.s
  3. In order to make sure everything went properly, go to stage 3:
    Output filename? smc386c3.s
    Input filename? smc386c.c
    Input filename? <enter>

    diff smc386c2.s smc386c3.s
    If diff doesn't produce output, this means the bootstrap was successful, and you can use the stage 2 compiler smc386c2.