🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.mac
Article #21628

Re: What is wrong with the Sumacc C compiler

#21628
From: Dennis Cohen
Date: Fri, 13 Nov 1987 15:36
44 lines
3041 bytes
In article <1102@cadnetix.UUCP>, pem@cadnetix.UUCP (Paul Meyer) writes:
> In article <2283@watcgl.waterloo.edu> kdmoen@watcgl.waterloo.edu (Doug Moen) writes:
> 
> On a 68000-series machine, sufficient fancy addressing modes are
> available to make absolute references to data unneccessary except for
> using low-memory globals (which of course don't move anyway).  This
> kind of coding is what makes code not "dynamically relocatable", and
> all programs for the Mac are required to be dynamically relocatable.
> 
> Presumably, the sumacc application could be set up as a single
> segment, but a single segment can't be more than 32K long.  I have no
> hard data on what sumacc does, but if it doesn't cooperate with the
> Mac operating system, it will obviously be vulnerable to breaking at
> the change of the wind.
> 

Wrong!!!  There are compilers such as Sumacc, TDI Modula-2, and one of the
FORTRAN compilers (I forget the name, but marketed by DCM in Fort Worth) that
do NOT use the Mac Segment loader.  There is nothing sacred about using the
segment loader, it's just that this is the addressing mode used by the vast
majority of Mac compilers (because that's the way Lisa Pascal did it, probably).
Compilers that don't use the segment loader need to have some other way of
handling overlays and segmentation is all.  As a matter of fact, TDI advertises
the lack of segment loader support as a beneficial feature of their compiler!
I'm not sure that I agree with that in general, but it could be valuable for a
certain class of application (maybe CAD) as this also removes the stack frame
and allows for other forms of global data storage than A5-relative.

You'll notice that the underlying architecture is a MC680x0 and that other
machines with the same processor don't have the segment loader.  It's just a
set of traps that Apple provides in ROM and PTCH to make things a little bit
easier, kind of like the Control Manager.  You don't have to use it, but if
you don't, you'll probably need to replace its functionality with something
else.

In short, don't say it ain't so until you at least take the time to check it
out.

Dennis Cohen
Ashton-Tate Glendale Development Center
dBASE Mac Development Team
--------------------------
Disclaimer:  The above opinions are mine (proprietary) and do not belong to my
employer.
Technical Details
Message-ID: <262@dbase.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!husc6!bloom-beacon!oberon!sdcrdcf!trwrb!scgvaxd!ashtate!dbase!drc
References: <7486@dartvax.UUCP> <7508@dartvax.UUCP> <21522@ucbvax.BERKELEY.EDU> <1102@cadnetix.UUCP>

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!husc6!bloom-beacon!oberon!sdcrdcf!trwrb!scgvaxd!ashtate!dbase!drc
From: drc@dbase.UUCP (Dennis Cohen)
Newsgroups: comp.sys.mac
Subject: Re: What is wrong with the Sumacc C compiler
Message-ID: <262@dbase.UUCP>
Date: Fri, 13-Nov-87 10:36:57 EST
Article-I.D.: dbase.262
Posted: Fri Nov 13 10:36:57 1987
Date-Received: Sun, 15-Nov-87 16:28:54 EST
References: <7486@dartvax.UUCP> <7508@dartvax.UUCP> <21522@ucbvax.BERKELEY.EDU> <1102@cadnetix.UUCP>
Organization: Ashton Tate Development Center Glendale Cal.
Lines: 44
Keywords: C compiler gripe
Summary: Segment loader