ack/util/mcgg
David Given 288ee56203 Get quite a long way towards basic output-register equality constraints (needed
to make special nodes like NOP work properly). Realise that the way I'm dealing
with the instruction selector is all wrong; I need to physically copy chunks of
tree to give to burg (so I can terminate them correctly).
2016-10-02 23:25:54 +02:00
..
build.lua Keep more data around about ir instructions. Implement a half-baked type 2016-09-26 22:12:46 +02:00
gram.y Come up with a syntax for register constraints. 2016-10-02 21:51:25 +02:00
iburg.c Get quite a long way towards basic output-register equality constraints (needed 2016-10-02 23:25:54 +02:00
iburg.h Come up with a syntax for register constraints. 2016-10-02 21:51:25 +02:00
ir.dat Perform SSA conversion of locals. Much, *much* better code now, at least 2016-10-02 17:50:34 +02:00
ircodes.h You know what, the type inference stuff is a complete red herring. What this 2016-09-29 19:58:02 +02:00
ircodes.sh You know what, the type inference stuff is a complete red herring. What this 2016-09-29 19:58:02 +02:00
LICENSE Import iburg. 2016-09-20 20:37:16 +02:00
mcgg.h Get quite a long way towards basic output-register equality constraints (needed 2016-10-02 23:25:54 +02:00
README Strip out surplus files. Rewrite README. 2016-09-20 20:46:45 +02:00
scan.l Come up with a syntax for register constraints. 2016-10-02 21:51:25 +02:00
UPSTREAM Import iburg. 2016-09-20 20:37:16 +02:00

mcgg is very heavily based on the iburg code generator by C. W. Fraser, D. R.
Hanson and T. A. Proebsting, described in ACM Letters on Prog. Languages and
Systems 1, 3 (Sep. 1992), 213-226:

http://storage.webhop.net/documents/iburg.pdf

For the original source, see the iburg-import branch (this is the version with
all the mcgg extensions).

iburg is licensed under the MIT open source license; see the LICENSE file.