printf() code size using Astartup.obj and AMIGA.LIB only
Pete Zakel
pete at valid.UUCP
Thu Jul 10 10:37:39 AEST 1986
> >>causes var to be first loaded, extended to a word, extended to a long, then
> >>compared against 0, EVEN when var is declared as a UBYTE...
>
> What's the second extend doing in there? Anything claiming to be a
> reasonable compiler should generate ONE extend.
Not if the processer is a 68000 or 68010. There is NO instruction to extend
byte to long. Fortunately that was fixed in the 68020, but that doesn't help
unless you have a compiler that understands 68020 AND you know all your
target machines have 68020s.
--
-Pete Zakel (..!{hplabs,amd,pyramid,ihnp4}!pesnta!valid!pete)
More information about the Comp.lang.c
mailing list