Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uflorida!gatech!mcnc!rti!sas!toebes From: toebes@sas.UUCP (John Toebes) Newsgroups: comp.sys.amiga.tech Subject: Re: Prototypes & the default promotions (was about the new RKM stuff.. Keywords: C calling conventions Message-ID: <980@sas.UUCP> Date: 23 Mar 89 14:45:28 GMT References: <8903111954.AA04828@jade.berkeley.edu> <15802@oberon.USC.EDU> <970@sas.UUCP> <6300@cbmvax.UUCP> <393@gtss.gatech.edu> <7621@pyr.gatech.EDU> Reply-To: toebes@sas.UUCP (John Toebes) Organization: SAS Institute Inc, Cary NC Lines: 34 In article <7621@pyr.gatech.EDU> dsking@pyr.UUCP ( David King) writes: > Charles had the right idea, which in fact was what I thought >the answer was....When I saw the answer at first I thought that it was >because the #pragma libcall only specifies the register to move the value to. >Now I think it was done for compatability the code you compile using >Amiga.lib will behaive exactly the same as the #pragma libcall'ed code. >However, that doesn't seem quite right, so my final guess is that the pragmas >were created using fd2pragma, and fd files have no concept of parts of a >register. > > John? > David King - a "Real Role-Player" (tm) Well, a little history of it all is in order. All of the files in the proto subdirectory shipped with the Lattice compiler were done by first using an AWK script on the .fd files and then editing the results by hand. At the time I did them, many of the routines were not documented at all as far as parameters go and I resorted to a combination of reading RKM, Autodocs, Mortimer's book, and one other that I can't remember. In a surprisingly large number of cases all the sources did NOT agree and I had to rely upon intuition (and my relentless beta testers) to get them correct. The prototypes were designed to work with Amiga.lib stubs regardless of the option you used for compiling the code so there aren't any SHORTS in the prototypes. fd2pragma was written after the prototype files were prepared so it didn't play in the picture. Does this clear up the situation? /*---------------------All standard Disclaimers apply---------------------*/ /*----Working for but not officially representing SAS or Lattice Inc.-----*/ /*----John A. Toebes, VIII usenet:...!mcnc!rti!sas!toebes-----*/ /*------------------------------------------------------------------------*/