ack/util/mcgg
David Given c079e97492 Perform SSA conversion of locals. Much, *much* better code now, at least
inasmuch as it looks better before register allocation. Basic blocks now know
their own successors and predecessors (after a certain point in the IR
processing).
2016-10-02 17:50:34 +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 Predicates work; we now have prefers and requires clauses. Predicates must be 2016-10-01 13:56:52 +02:00
iburg.c Predicates work; we now have prefers and requires clauses. Predicates must be 2016-10-01 13:56:52 +02:00
iburg.h Predicates work; we now have prefers and requires clauses. Predicates must be 2016-10-01 13:56:52 +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 More properly keep track of register classes. 2016-09-29 22:32:43 +02:00
README Strip out surplus files. Rewrite README. 2016-09-20 20:46:45 +02:00
scan.l Predicates work; we now have prefers and requires clauses. Predicates must be 2016-10-01 13:56:52 +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.