Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!nuchat!uhnix1!sugar!schaub From: schaub@sugar.UUCP (Markus Schaub) Newsgroups: comp.sys.amiga,comp.lang.modula2 Subject: Re: M2Amiga, a new Modula-2 compiler Message-ID: <1067@sugar.UUCP> Date: Sun, 15-Nov-87 13:45:10 EST Article-I.D.: sugar.1067 Posted: Sun Nov 15 13:45:10 1987 Date-Received: Mon, 16-Nov-87 06:51:45 EST References: <1982@crash.CTS.COM> <2730@cbmvax.UUCP> Organization: Sugar Land UNIX - Houston, TX Lines: 46 Xref: mnetor comp.sys.amiga:11051 comp.lang.modula2:522 In article <2730@cbmvax.UUCP>, daveh@cbmvax.UUCP (Dave Haynie) writes: > in article <1982@crash.CTS.COM>, haitex@pnet01.cts.com (Wade Bickel) says: > > Xref: cbmvax comp.sys.amiga:10462 comp.lang.modula2:509 > > created at every call of the same routine. I can see this being faster, > > but not more compact. > It could be a close call,size wise.I'm not sure about M2 calling conventions, > but in C, all function arguments are pushed on the stack. The stub from Same in Modula-2, only difference: M2 routines clean the stack, fixed number of parameters (in difference to C) makes this possible. > Amiga.Lib pops these stack arguments into the appropriate registers, loads > the library base into A6, then calls the appropriate library routine relative In M2Amiga the library base is loaded pc relative not from an absolute address, and the library offset is coded as a 16-bit value instead of a 32-bit external absolute value. This the difference to C stubs. > to that library base. If a compiler can generate an alternate calling > convention for library routines, based on specific knowledge that the routine Thanx, to precompiled definitions (symbol files) > the setup for library call is only one or two extra instructions over the > normal function call. Almost exactly, I wish this were my words, but although being 4 months in the States now my English could need some lessons.We don't need extra instructions because M2Amiga also loads basepointers for imported modules the same way. > In any case, it looks like Amiga-based M2 compilers are evolving at least as > quickly as C compilers, making M2 a really viable language for the Amiga. I hope my friends back in Switzerland will soon release the source level debugger! There will be real competition to C! Hey Claudio, maybe you can tell us about the state of the debugger. > > Wade. > -- > Dave Haynie Commodore-Amiga Usenet: {ihnp4|caip|rutgers}!cbmvax!daveh -- // Markus Schaub uunet!nuchat!sugar!schaub (713) 523 8422 // M2Amiga Developer trying to get back the money I paid for my \\ // Amiga by selling a few M2Amiga. \X/ c/o Interface Technologies Corp, 3336 Richmond #323, Houston Tx 77098