Related articles |
---|
8-bit processor specific techniques laguest9000@googlemail.com (lucretia9@lycos.co.uk) (2015-09-27) |
Re: 8-bit processor specific techniques cr88192@hotmail.com (BGB) (2015-09-27) |
Re: 8-bit processor specific techniques walter@bytecraft.com (Walter Banks) (2015-09-28) |
Re: 8-bit processor specific techniques laguest9000@googlemail.com (lucretia9@lycos.co.uk) (2015-09-29) |
Re: 8-bit processor specific techniques cr88192@hotmail.com (BGB) (2015-09-29) |
From: | Walter Banks <walter@bytecraft.com> |
Newsgroups: | comp.compilers |
Date: | Mon, 28 Sep 2015 11:04:28 -0400 |
Organization: | Aioe.org NNTP Server |
References: | 15-09-019 |
Keywords: | code, history, comment |
Posted-Date: | 28 Sep 2015 15:26:48 EDT |
On 27/09/2015 10:30 AM, lucretia9@lycos.co.uk wrote:
> I've been looking around for anything related to compiler development for
> 8-bit processors. ...
> [There are plenty of compilers for 8 bit machines, particulary at
> retrocomputing sites, but I don't recall a lot of interesting code
> generation stuff. They tend to have so few registers and be so
> irregular that little of the optimization stuff intended for code
> generation applies. -John]
John, you actually have identified the source for a lot of code
generation technology used in 8 bit compilers. There is a wealth of
material in some of the compilers that is used to map processors with
unusual instruction sets on to C.
Unfortunately most of this material has never been published and
hasn't been the focus of research projects. The techniques used mostly
show up in application specific ISA's. This is the type of processor
whose applications tend not to be hosted and are small enough that
compilers can be exhaustive and often have tight execution
requirements.
A couple starting places for this type of compiler. Once parsed
implement a strategy pass to map out application implementation
approachs this time. Seriously consider dispensing with linkers for
this type of compiler, their original purpose was to allow separately
compiled modules and combine them later, in this type of compiler
cross compiling a whole application is both possible and appropriate.
w..
[Agreed about the linker bit. These days, in the tool sets for
embedded processors the object files that the compilers create are
really just an intermediate code, and the linker does a global
optimization pass over the whole program and only then generates
the machine code. -John]
Return to the
comp.compilers page.
Search the
comp.compilers archives again.