New Jersey Machine-Code Toolkit
Helps programmers write applications that process machine code: assemblers, disassemblers, code generators, tracers, profilers, debuggers. Toolkit lets programmers encode and decode machine instructions symbolically. Encoding and decoding are automated based on compact specifications.
http://www.eecs.harvard.edu/~nr/toolkit/
|
|
|
vcode
A library for dynamically generating machine code from within a C program. Code is generated using a generic RISC-like virtual instruction set which is then translated into native processor instructions. Currently vcode supports MIPS, SPARC, and Alpha processors.
http://www.pdos.lcs.mit.edu/~engler/pldi96-abstract.html
|
BEG - a Back End Generator
BEG is a commercial generator for compiler back ends. It reads a declarative description of a target processor (i.e. SPARC, MIPS, ARM, x86, etc.) and produces a possibly optimizing code generator in form of a C program.
http://www.hei.biz/beg/
|
EAG
A compiler compiler that uses the Extended Affix Grammar (EAG) formalism which describes both the context free and context sensitive syntax of language. The compiler generates either a recognizer or a transducer or a translator or a syntax-directed editor for a described language.
http://www.cs.ru.nl/~kees/eag/
|