ack/util/mcgg
David Given 9977ce841a Remove the bytes1, bytes2, bytes4, bytes8 attributes; remove the concept of a
register 'type'; now use int/float/long/double throughout to identify
registers. Lots of register allocator tweaks and table bugfixes --- we now get
through the dreading Mathlib.mod!
2016-10-25 23:04:20 +02:00
..
build.lua Hacky workaround the way the Modula-2 compiler generates non-standard sized 2016-10-22 10:48:22 +02:00
gram.y Remove the bytes1, bytes2, bytes4, bytes8 attributes; remove the concept of a 2016-10-25 23:04:20 +02:00
iburg.c Remove the bytes1, bytes2, bytes4, bytes8 attributes; remove the concept of a 2016-10-25 23:04:20 +02:00
iburg.h Remove the bytes1, bytes2, bytes4, bytes8 attributes; remove the concept of a 2016-10-25 23:04:20 +02:00
ir.dat Massive change to how IR types are handled; we use the type code for matching 2016-10-23 21:54:14 +02:00
ircodes.h Remove the bytes1, bytes2, bytes4, bytes8 attributes; remove the concept of a 2016-10-25 23:04:20 +02:00
ircodes.sh Re-re-add the type inference layer, now I know more about how things work. 2016-10-22 23:04:13 +02:00
LICENSE Import iburg. 2016-09-20 20:37:16 +02:00
mcgg.h Remove the bytes1, bytes2, bytes4, bytes8 attributes; remove the concept of a 2016-10-25 23:04:20 +02:00
README Strip out surplus files. Rewrite README. 2016-09-20 20:46:45 +02:00
scan.l Add (pretty crummy) support for register aliases and static pairs of registers. 2016-10-21 23:31:00 +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.