mdj wrote:
Eric wrote:Yes, but compare cc65 to the execution speed of Applesoft, and even Apple Pascal. I bet it's faster than them and if you're familiar with C that might be plenty good.Oh, sure, it'll be faster than both of those examples, but I think you'll find the codesize is rather large :-)Once Hendrix has optimized the intermediate code, he sends it through a final native code generation phase. This can't compete with commercial compilers/optimizers but it's surprisingly effective given the relatively few lines of code it requires.Nice. I'll have to take a look sometime.
It is quite reasonable to have both a machine-independent optimizer running on intermediate code and a machine-dependent optimizer running after code selection. Common subexpressions, constant folding, most branch to branch elimination, etc., are all nicely done at the machine-independent stage. The most important machine-dependent optimizations have to do with mapping the semantics to machine resources (registers and page zero), particularly to optimize addressing. -michael New, faster SUDOKU v2.0 solver for Apple II's! Home page: http://members.aol.com/MJMahon/ "The wastebasket is our most important design tool--and it's seriously underused."