:As long as gcc uses %ebp to address local variables and functoin parameters
:rather than %esp you should be fine.  %esp will be preserved, but if %esp is
:for some odd reason used to address a variable during the C code, you are hosed.

    I strongly recommend against making assumptions about GCC's use of %ebp vs
    %esp... not if you want the __asm code to survive the GCC optimizer!

:Just use foo = save_intr(); disable_intr(); .. restore_intr() for now.  If you
:want to save the 2 instructions so badly, then you should probably be writing
:the whole chunk in assembly.  Getting it correct first and optimizing later is
:more sane than getting correctness and optimization at the same time and not
:knowing which one your bugs are coming from.
:John Baldwin <[EMAIL PROTECTED]> -- http://www.FreeBSD.org/~jhb/

    Yah, gotta agree there.  The only thing that matters, Julian, are memory
    accesses.  The number of instructions you use is irrelevant.


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

Reply via email to