>> yet not impact portability whatsoever, since there's still the C >> functions available >> for new ports until whatever time they choose to write the optimized >> version, or not. :) > >And this is the key. Write whatever you please in assembly, *as long as >* there is a C fallback. Of course, some things have to be done in >assembler in the kernel, and use it for that, but always provide a >fallback everywhere else. >-Nathan Let me put it this way - OTHER THAN stuff from NewOS (which is Travis' domain), anyone who wants to use asm at all will have to justify it. There is almost never a good reason. I would want things like a code profile showing that the code is the performance issue, real evidence that the code CAUSES a performance issue, and to have looked at it as a team and decided that there is *no* other way. Premature optimization is the root of bad coding. Moving to asm is the most common (that I can think of) premature optimization that people make. I use profilers all the time (whether -pg or some other methodology) on code that is performance crititical. I am winding up such a project at my full time job. Once the code was 100% complete AND tested AND regession testable AND documented, we work on getting it faster. Using profiling, I have fixed a couple, maybe as many as 5 functions and multiplied the speed of the process by 1.5. That, not guessing, not using folk stories and wives tales, is the way to optimize. :-) Travis writes most of his code in C. Only the things that need to be in asm are. Does that make everyone comfortable? Except those who want to write asm? :-)