|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
Class Summary | |
---|---|
XyzAssembler | This class generates Xyz assembly language from a list of Xyz instructions. |
XyzGenerator | This class converts Scribble into Xyz instructions. |
XyzMachine | This is the base class for all Xyz specific information. |
XyzRegisterSet | This class describes the register set of the Xyz architecture. |
This package provides templates that can be used to create a code generator for a different architecture. The classes provided can be copied into the new directory for the new architecture and renamed. For example, assume you want to create a code generator for the HAL9000 system.
hal9000
, in the
scale/backend
directory.
scale/backend/xyz
to
scale/backkend/hal9000
.
XyzGenerator.java | ⇒ | Hal9000Generator.java |
XyzAssembler.java | ⇒ | Hal9000Assembler.java |
XyzRegisterSet.java | ⇒ | Hal9000RegisterSet.java |
XyzMachine.java | ⇒ | Hal9000Machine.java |
Makefile | ⇒ | Makefile |
xyz
with
hal9000
and replacing all occurances of Xyz
with Hal9000
scale/backend/Makefile
file to add the hal9000
directory.
-arch hal9000
as a
parameter to the Scale compiler.
Note - all the current code generators are for RISC-style
architectures. There may be existing assumptions in the base classes
in scale/backend
that assume that the architecture is
byte-addressable and that the architeture follows
load/operate/store model. It may be difficult to develop code
generators for word-addressable systems and CISC-style systems.
|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |