> On Mon, Jul 12, 1999 at 10:38:03PM -0700, Mike Smith wrote:
> > I said:
> > > than indirect function calls on some architectures: inline
> > > branched code.  So you still have a global variable selecting
> > > locked/non-locked, but it's a boolean, rather than a pointer.
> > > Your atomic macros are then { if (atomic_lock) asm("lock;foo");
> > > else asm ("foo"); }
> > 
> > This requires you to have all the methods present at compile time, 
> > which defeats the entire purpose of dynamic method loading.
> 
> Pardon?  I didn't see a discussion of dynamic loading anywhere
> here.  We were referring to tiny inlined assembly language routines.
> The existing implementation is #defines in a C header file.

Uh, no, I was asking about the overhead involved in indirect function 
calls specifically because there are instances where fast indirect 
methods would allow us to greatly improve the generality of parts of 
the FreeBSD kernel and modules.  This includes code where we are 
currently using compile-time defines that require us to trade 
performance for generality.

-- 
\\  The mind's the standard       \\  Mike Smith
\\  of the man.                   \\  [EMAIL PROTECTED]
\\    -- Joseph Merrick           \\  [EMAIL PROTECTED]




To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to