3
$\begingroup$

Is it possible, given a declarative description of an architecture's register layout and instruction semantics and machine code encodings, to autogenerate a compiler back-end?

If so, has anyone ever done this?

$\endgroup$
  • 1
    $\begingroup$ LLVM might come close to what you are looking for? $\endgroup$ – Realz Slaw Oct 14 '13 at 1:21
3
$\begingroup$

João Dias; Norman Ramsey: "Automatically Generating Back Ends Using Declarative Machine Descriptions", Proc. ACM Symp. Principles of Prog. Lang., (POPL-37):403-416, 2010.

I think this goes a bit farther than you asked for, because they're actually looking for good code sequences. For something a little more basic you could go back to some of Norm Ramsey's earlier work, like: Norman Ramsey; Mary F. Fernández: "Specifying Representations of Machine Instructions", ACM T. Prog. Lang. and Sys., 19(3):492–524, May 1997.

There's a long line of research on trying to automatically generate back ends from simpler descriptions. Look for papers by Christopher W Fraser, David R Hanson and Todd A Proebsting.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.