Messages in this thread | | | From | Andrew Lutomirski <> | Date | Mon, 15 Aug 2011 14:35:26 -0400 | Subject | Re: x86 memcpy performance |
| |
On Mon, Aug 15, 2011 at 2:26 PM, H. Peter Anvin <hpa@zytor.com> wrote: > On 08/15/2011 09:58 AM, Andrew Lutomirski wrote: >> On Mon, Aug 15, 2011 at 12:12 PM, H. Peter Anvin <hpa@zytor.com> wrote: >>> On 08/15/2011 08:36 AM, Andrew Lutomirski wrote: >>>> >>>> (*) kernel_fpu_begin is a bad name. It's only safe to use integer >>>> instructions inside a kernel_fpu_begin section because MXCSR (and the >>>> 387 equivalent) could contain garbage. >>>> >>> >>> Uh... no, it just means you have to initialize the settings. It's a >>> perfectly good name, it's called kernel_fpu_begin, not kernel_fp_begin. >> >> I prefer get_xstate / put_xstate, but this could rapidly devolve into >> bikeshedding. :) >> > > a) Quite. > > b) xstate is not architecture-neutral.
Are there any architecture-neutral users of this thing? If I were writing generic code, I would expect:
kernel_fpu_begin(); foo *= 1.5; kernel_fpu_end();
to work, but I would not expect:
kernel_fpu_begin(); use_xmm_registers(); kernel_fpu_end();
to make any sense.
Since the former does not actually work, I would hope that there is no non-x86-specific user.
--Andy -- 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/
| |