|
From: Christopher F. <cg...@re...> - 2002-09-11 04:04:41
|
On Tue, Sep 10, 2002 at 11:53:46PM -0400, Igor Mikolic-Torreira wrote: >At 11:29 PM 9/10/2002 -0400, Christopher Faylor wrote: >>>I can solve is by adding "__attribute__((always_inline))" to the >>>functions. This way so there are no "extra overhead" concerns even in the >>>no optimization case. >> >>Is always_inline available to gcc 2.95.x? I thought this was a very >>recent addition to gcc. >> >>Checking the gcc ChangeLog... >> >>Yes, it was introduced on 2002-02-21. So, it's in 3.2 but not 2.95.3. >> >>Sorry. > >Bummer. Well, is the overhead of having these functions out-of-line in the >no-optimization case a show-stopper? The answer is probably "depends" ;) I would really like to see everything defined as inline rather than as a macro myself but I think "it depends' is the right answer. Not that I have any say in this. :-) You could define things differently based on whether you are compiling for gcc 3.2 or greater but that would probably needlessly complicate the header files. Keeping the headers compact is a goal of w32api, AFAIK. >I'm still going to make these mods locally for our own work-group because >it makes our lives many orders of magnitude easier (we do a lot of porting >& adapting) and the extra overhead in the no-optimization case isn't a big >concern to us. So for _our_ situation it's pretty clear-cut. > >I'm not sure what everyone else will think. If the consensus opinion is >that this change is worth the cost incurred in the no-optimization case, >let me know and I'll submit a patch. I am most definitely not trying to >force this change on everyone -- just offering to share if so desired. It should be interesting to hear what everyone else thinks about this... cgf |