davidgiven / cowgol

A self-hosted Ada-inspired programming language for very small systems.
BSD 2-Clause "Simplified" License
248 stars 20 forks source link

Use a6-offsetting rather than absolute addresses for accessing the workspace. #108

Closed davidgiven closed 3 years ago

davidgiven commented 3 years ago

Unlike the other platforms, this uses a single global pointer to ws; this is simpler than having a per-subroutine one, as well as making subroutine prologue and epilogues less complex. It takes the size of cowfe for the 68000 down from 107046 bytes to 97275 bytes, which is respectable. Also applies some other minor optimisations.