Bruce Evans wrote:
printf( <const string>); -> pusts( <const string>);
> > That is an incredibly *fugly* "optimization". It assumes that I
> > use libc, unless I have "-ffreestanding", and it assumes my
> > implementation of printf vs. puts.
> This is a routine optimization. It assumes that you use a C compiler
> (printf and even libc might not exist, since they might be builtins).
> A non-routine optimization might involve building hardware to run the
> application and emitting the 1 bit instruction to turn the hardware on.
It's routine to assume that I'm going to use libc?!?
I understand the -fnobuiltins thing... particularly if the compiler
generates code that makes a function call, instead of generating
the code inline, and saving the call/return (kind of makes you want
-fnobuiltins by default, though, since "I'm smarter than the compiler
writers" is a common base assumption).
I *really* don't understand them making assumptions about the
instrumentation that I may or may not have put between myself and
the libc implementations of functions, though.
Historically, for code portability, I used to carry around my own
printf(), and I didn't even have a puts(); this "optimization" would
*really* break things.
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message