Patch for builtin fputs (first stdio opt ready for install)

Kaveh R. Ghazi ghazi@caip.rutgers.edu
Wed Sep 6 10:32:00 GMT 2000


 > From: Jason Merrill <jason@redhat.com>
 > 
 > You could save a pointer to the _DECL for __builtin_fputc in
 > c_common_nodes_and_builtins.
 > 
 > Or you could just use emit_library_call and dispense with the _DECL
 > entirely; that's probably the easiest solution.
 > 
 >  > Future optimizations will require expanding into other builtins,
 >  > regular libc calls and inline functions we'll declare behind the
 >  > scenes.  This is why I felt the get_decl mechanism was useful as a
 >  > generic way to get info out of language dependent tree structures.
 > 
 > Jason

If I use emit_library_call(), then further opts won't get done
recursively, because it'll actually emit the call rather than lookup
other possible builtins right?

E.g. long term I want this to work:
fprintf("\n") -> fputs("\n") -> fputc('\n') -> putc_macro ('\n')

However, builtin_function() returns the _DECL, so you're right I could
cache it as long as every optimization I'd want to do involved calling
some other builtin which I declare and save.  This'll handle most of
what I want I think.  I'll try it out and see what happens.

		Thanks,
		--Kaveh
--
Kaveh R. Ghazi			Engagement Manager / Project Services
ghazi@caip.rutgers.edu		Qwest Internet Solutions


More information about the Gcc-patches mailing list