[cfe-dev] RFC: Support x86 interrupt and exception handlers

David Chisnall via cfe-dev cfe-dev at lists.llvm.org
Tue Sep 22 01:37:42 PDT 2015


On 22 Sep 2015, at 09:16, Hal Finkel via cfe-dev <cfe-dev at lists.llvm.org> wrote:
> 
> Sure, but I imagine saving all 32 AVX registers plus the GPRs, etc. is in the same ballpark.

Slightly off-topic, but this is one thing that we’ve noticed on FreeBSD where LLVM causes some performance regressions.  We lazily switch x87 / SSE state on context switch, so the context switch cost is reduced for programs that don’t use them.  LLVM assumes that SSE is always available and so will turn small memcpy calls into inline SSE sections.  The first time this occurs in any given quantum, it triggers a fault and the SSE state is context switched in.  In integer-only programs (or ones that have integer-only phases that are longer than one scheduling quantum), this can more than offset any speedup from using SSE for the memcpy.

David




More information about the cfe-dev mailing list