|
|||||||||
| 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 | ||||||||