Jeff Garzik wrote:
>
> george anzinger wrote:
> > Lets say there is a bit of code in the kernel ( i.e.
> > .../kernel/ ) that needs a function that is in an
> > asm-gneric/*.h file. Now someone comes along and does an
> > asm-x386/*.h with the same functionality but much faster asm
> > functions. How should the using code be set up to get the
> > faster asm version if it exists and the generic version if
> > it does not?
>
> Can you be more specific? :)
>
> asm-generic is for things that belong in include/asm-$ARCH but are also
> shared across multiple architectures.
>
What I have is a generic version of sc_math.h, a set of
inlines and defines that make it easy to access the mpy and
div instructions with 64-bit/32-bit arguments (for example
mpy takes 2 32-bit arguments and produces a 64-bit result).
Individual archs would do these things with an sc_math.h
that uses asm (which I also have for the i386 arch). So the
question is how things are set up so that the arch version
is used if available and the generic if not.
I think the answer (one of those, "it came to me in the
shower answers") is that it is handled by the make file
setting up the include file search paths so that first
asm-<arch> is search and then asm-generic.
-- George Anzinger george@mvista.com High-res-timers: http://sourceforge.net/projects/high-res-timers/ Preemption patch: http://www.kernel.org/pub/linux/kernel/people/rml - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sat Dec 07 2002 - 22:00:23 EST