gml4gtk / gcc1

This is a re-compilation of GNU GCC compiler version 1.21 from 1988

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gcc1

This is a re-compilation of GNU GCC compiler version 1.21 from 1988

From the ChangeLog:

Sun May  1 07:20:34 1988  Richard Stallman  (rms at frosted-flakes.ai.mit.edu)  
  
	* Version 1.21 released.  
  
	* expr.c (expand_call): Merge duplicate code for structure_value_addr.  
  
	* emit-rtl.c (restore_reg_data): Delete error check; it's legit for  
	a pseudo reg to appear nowhere in the rtl.  
  

In the directory orig is the original gcc-1.21 version
In the directory src1 is the initial re-compiled version to be improved
In the directory misc is the C grammar as html page of gcc-1.21 and other gcc versions
In the directory bison is the oldest known GNU Bison parser generator from 1988
This GNU Bison version from 1988 can be re-compiled without issues in 2021

Re-compiling can be fun and this can be extended using GCC docs as a guide about gcc basics

See also this blog article: "Building and using GCC 0.9 aka the first public version"
https://virtuallyfun.com/wordpress/2016/12/01/building-using-gcc-0-90-aka-first-public-version/

This also can be used as a protoype for another cpu or system or even generate wasm assembly
And it is more usable to re-compile older GCC version adding new features
then to write the yet-another-crappy-compiler as almost other programmers do

Todo:
To improve, fix more issues and bugs, and a autoconf version
Make example how to add some cpu and / or generate wasm assembly
Generate compiler graph data to be used with gml4gtk graph viewer
For debug generate documented assembly and / wasm assembly
Create a front-end usable for debug
For more features simply look at gcc-1.42 and / or gcc-2.95 sources

screenshot

About

This is a re-compilation of GNU GCC compiler version 1.21 from 1988

License:GNU General Public License v2.0


Languages

Language:C 76.3%Language:C++ 6.6%Language:HTML 6.4%Language:GCC Machine Description 4.7%Language:Yacc 2.5%Language:TeX 2.1%Language:Roff 0.8%Language:Makefile 0.4%Language:DIGITAL Command Language 0.2%Language:GDB 0.0%Language:Component Pascal 0.0%Language:Shell 0.0%