ack/util/mcgg
David Given bd28bddb92 Massive rewrite of how emitters and the instruction selector works, after I
realised that the existing approach wasn't working. Now, hopefully, tracks the
instruction trees generated during selection properly.
2016-10-04 00:16:06 +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 Massive rewrite of how emitters and the instruction selector works, after I 2016-10-04 00:16:06 +02:00
iburg.c Massive rewrite of how emitters and the instruction selector works, after I 2016-10-04 00:16:06 +02:00
iburg.h Come up with a syntax for register constraints. 2016-10-02 21:51:25 +02:00
ir.dat Instruction selection now happens on a shadow tree, rather than on the IR tree 2016-10-03 20:52:36 +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 Massive rewrite of how emitters and the instruction selector works, after I 2016-10-04 00:16:06 +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.