CompuServe Thread

Forum unknown · Programming

#C Compilers

9 messages in this thread
#16350From: Rick SchaefferApr 26, 1986 8:08 PM
Check out AZLAT.DOC in DL8. Aztec is *much* faster at compile/link than Lattice (5 to 6 times faster). Aztec modules are usually half the size of Lattice modules (executable modules, that is). Aztec floating point is 10 times faster than Lattice (due to Aztec's use of the Motorola FFP library). Aztec won't let you do printer device drivers at this time… thats the only problem I've had with it. Rick Schaeffer
#16369From: Ed SilvaApr 26, 1986 11:20 PM
Rick…Does Aztec has all of the libraries Intuition,Graphics that are in the Lattice compiler and if I have Lattice source files can Aztec compile them and viceversa. I wrote a loop from 0 to 125000 and it takes a second for Lattice to do it I know is a simple test BUT how many times a sec can a Aztec do it 500,000 a sec if so and has all the libraries I am going to Aztex I have the Developers kit but what the heck…! Eduardo-
#16385From: Rick SchaefferApr 27, 1986 1:28 AM
Eduardo, the Aztec compiler does indeed have all the libraries, include files, etc. that you need to do developement. I mentioned that it cannot be used to develop print drivers…although they are supposed to fix that problem in the next release. As to the benchmark you mentioned, it is much too simple…both compilers would certainly generate nearly identical code. Where Aztec really picks up it's gain is in it's linker…which has much finer granularity than Alink. In pointer handling and floating point calculations Aztec seems to generate significantly faster code. In a pure integer benchmark such as you suggest, Aztec would surely be faster because it uses 16 bit integers where Lattice uses 32 bit integers…but it wouldn't be 5 times faster! In COMPILE time and LINK time, Aztec *is* 5 times faster. In floating point, Aztec was actually almost 10 times faster due to it's use of the Motorola Fast Floating Point Library. As to compatibility with Lattice, I've had very few problems in that area. Most programs just compile and run…but you do have to watch out for integer/pointer puns. Lattice uses 32 bit integers and 32 bit pointers so it's possible to get away with not declaring a function as returning a pointer. Aztec's default mode is 16 bit integers and 32 bit pointers… which can cause problems if you haven't declared properly. All Amiga library functions expect 32 bit integers, too, so you have to be careful to pass Aztec Longs sometimes. Aztec does have a compile time option to generate 32 bit ints…which takes care of the above problems but slightly enlarges and slows your program. I usually get 'em running using the 32 bit option…and then convert to 16 bits for speed. Rick Schaeffer
#16715From: Charlie HeathApr 29, 1986 10:07 PM
When compiling to Ram: and linking using the "faster" option, Lattice really isn't that much slower. Slower, yes; five times slower, no.
#16715From: Charlie HeathApr 29, 1986 10:07 PM
When compiling to Ram: and linking using the "faster" option, Lattice really isn't that much slower. Slower, yes; five times slower, no.
#16385From: Rick SchaefferApr 27, 1986 1:28 AM
Eduardo, the Aztec compiler does indeed have all the libraries, include files, etc. that you need to do developement. I mentioned that it cannot be used to develop print drivers…although they are supposed to fix that problem in the next release. As to the benchmark you mentioned, it is much too simple…both compilers would certainly generate nearly identical code. Where Aztec really picks up it's gain is in it's linker…which has much finer granularity than Alink. In pointer handling and floating point calculations Aztec seems to generate significantly faster code. In a pure integer benchmark such as you suggest, Aztec would surely be faster because it uses 16 bit integers where Lattice uses 32 bit integers…but it wouldn't be 5 times faster! In COMPILE time and LINK time, Aztec *is* 5 times faster. In floating point, Aztec was actually almost 10 times faster due to it's use of the Motorola Fast Floating Point Library. As to compatibility with Lattice, I've had very few problems in that area. Most programs just compile and run…but you do have to watch out for integer/pointer puns. Lattice uses 32 bit integers and 32 bit pointers so it's possible to get away with not declaring a function as returning a pointer. Aztec's default mode is 16 bit integers and 32 bit pointers… which can cause problems if you haven't declared properly. All Amiga library functions expect 32 bit integers, too, so you have to be careful to pass Aztec Longs sometimes. Aztec does have a compile time option to generate 32 bit ints…which takes care of the above problems but slightly enlarges and slows your program. I usually get 'em running using the 32 bit option…and then convert to 16 bits for speed. Rick Schaeffer
#16714From: Charlie HeathApr 29, 1986 10:04 PM
Aztec has acess to all the libraries, and is a bit more efficient at acessing them because of it's register allocation ( register A6 is a scratch register under Aztec, and thus does not have to be saved whemn calling library funcs ) . Did you use register variables in that Lattice example? Under Lattice, register variables can save a lot in both code space and execution speed.
#16714From: Charlie HeathApr 29, 1986 10:04 PM
Aztec has acess to all the libraries, and is a bit more efficient at acessing them because of it's register allocation ( register A6 is a scratch register under Aztec, and thus does not have to be saved whemn calling library funcs ) . Did you use register variables in that Lattice example? Under Lattice, register variables can save a lot in both code space and execution speed.
#16369From: Ed SilvaApr 26, 1986 11:20 PM
Rick…Does Aztec has all of the libraries Intuition,Graphics that are in the Lattice compiler and if I have Lattice source files can Aztec compile them and viceversa. I wrote a loop from 0 to 125000 and it takes a second for Lattice to do it I know is a simple test BUT how many times a sec can a Aztec do it 500,000 a sec if so and has all the libraries I am going to Aztex I have the Developers kit but what the heck…! Eduardo-