CompuServe Messages

#Bruce Dawson Review

    05-Jan-89 22:32:05
Fm: Richard Rae/SYSOP 76703,4253
To: colin fox 72077,2636
You guys have finally gotten my curiosity up to the point that I had to try this. First I coded: FRED BRA.L DAVE BRA.S FRED DAVE RTS The Aztec AS did NOT change the long branch to a short. Then I ripped out the BRA.S FRED. No change. Now here's where it gets interesting: I changed the long branch to a short. Guess what the result was? 0000: FRED BRA.S DAVE 0000: 4E75 DAVE RTS You got it, son: it optimized the short branch right out of existence! Now granted the short branch was a NOP (so was the long branch; why didn't it touch THAT?), but by golly, maybe I had a REASON to put that in there. No warning at all, it just ripped it out. I have to say I'm not happy about this. I wonder what else AS has changed in my code without telling me? Come on Manx, the optimization should be done in the C COMPILER, not the assembler! Sheesh. Rick