Stefan Reinauer wrote:
- Segher Boessenkool segher@chello.nl [020623 03:05]:
Well no. It will still only compile on compilers that support GCC's variable macro arg syntax and its computed-goto-to-label support; the only compiler that works with all this is GCC (even icc won't work). Oh, and named record initialization, too (a C99-ism).
The later one is probably easy to "fix", computed goto has it's point. But this can probably be worked around with some #ifdefs as well. Variable macro arg is a problem. Will we still need this when we are able to compile the whole thing with itself?
We'll still need a bootstrap dictionary, although we can distribute the more common varieties (correct-endian vs little-endian, 32 or 64 bit) in binary form.
If you send a patch that removes these dependencies while not getting any performance loss (and the restrict's matter a lot, but there's not enough of them at this exact moment), it'll sure be applied. But as long as we require GCC anyway, I prefer using all C99 goodies that ease my life.
None of my tests showed any change in performance with restrict (was gcc 3.1.1 though, not HEAD) Still, restrict is changed to a macro
I got an about 2x speedup (with older versions of the paflof source; newer source screws up somewhere).
in the latest version of my patch, which is set when the keyword is available. The same way would be viable for the other C99isms and GNUisms. This way people have the choice between portability and speed without having to touch the source. I don't think this will bloat the source too bad - less than thousand lines are pretty easy to overview.
but don't do that ugly
#define __RESTRICT__ restrict
thing; rather, do
#define restrict /**/
or something like that.
I'll look into the auto-config-types thingie sometime soonish, btw. Yes I'm slow these days, sorry.
It's getting summer,.. nothing more understandable than that. If you
well i'm just busy, that's all. although the beach is only a few minutes of walking from here :)
have any todo/wishes/requirements for this, drop me a note, I will implement it.
can't think of anything right now, sorry...
Segher
- To unsubscribe: send mail to majordomo@freiburg.linux.de with 'unsubscribe openbios' in the body of the message http://www.freiburg.linux.de/OpenBIOS/ - free your system..