Replaced the block splicer with a trivial block eliminator (which rewrites
authorDavid Given <dg@cowlark.com>
Fri, 23 Sep 2016 21:59:15 +0000 (23:59 +0200)
committerDavid Given <dg@cowlark.com>
Fri, 23 Sep 2016 21:59:15 +0000 (23:59 +0200)
commited67d427c9cceaa8c77d9fbc838651d8fee3aa59
tree510a7834e920307474063ebbbd0435eb1a8d2405
parentf8bbf9e87d37dbfac29705679381446c08d7dce1
Replaced the block splicer with a trivial block eliminator (which rewrites
jumps to blocks which contain only a jump). Don't bother storing the bb graph
in the ir nodes; we can find it on demand by walking the tree instead ---
slower, but much easier to understand and more robust. Added a terrible map
library.
16 files changed:
mach/proto/mcg/array.h
mach/proto/mcg/compile.c
mach/proto/mcg/ir.c
mach/proto/mcg/ir.h
mach/proto/mcg/ircodes.sh
mach/proto/mcg/main.c
mach/proto/mcg/map.c [new file with mode: 0644]
mach/proto/mcg/map.h [new file with mode: 0644]
mach/proto/mcg/mcg.h
mach/proto/mcg/parse_em.c
mach/proto/mcg/pass_convertstackops.c
mach/proto/mcg/pass_deadblocks.c [deleted file]
mach/proto/mcg/pass_eliminatetrivialblocks.c [new file with mode: 0644]
mach/proto/mcg/pass_removedeadblocks.c [new file with mode: 0644]
mach/proto/mcg/pass_spliceadjacentblocks.c [deleted file]
mach/proto/mcg/treebuilder.c