diff options
author | imp <imp@FreeBSD.org> | 2015-01-08 00:39:40 +0000 |
---|---|---|
committer | imp <imp@FreeBSD.org> | 2015-01-08 00:39:40 +0000 |
commit | a1d87ddc1026000bc73f4ee5a77c288249f2df16 (patch) | |
tree | bc3d17865c01b77eee2e61fd607d2e0b7ce16cdb /sys/i386 | |
parent | 3e76fe38ac67ebe704211939a44e6de3777c2438 (diff) | |
download | FreeBSD-src-a1d87ddc1026000bc73f4ee5a77c288249f2df16.zip FreeBSD-src-a1d87ddc1026000bc73f4ee5a77c288249f2df16.tar.gz |
Don't call the SSE routines when they aren't enabled (or even compiled
into the kernel).
Diffstat (limited to 'sys/i386')
-rw-r--r-- | sys/i386/i386/elf_machdep.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/i386/i386/elf_machdep.c b/sys/i386/i386/elf_machdep.c index cd701aa..43757a1 100644 --- a/sys/i386/i386/elf_machdep.c +++ b/sys/i386/i386/elf_machdep.c @@ -47,6 +47,10 @@ __FBSDID("$FreeBSD$"); #include <machine/md_var.h> #include <machine/npx.h> +#if !defined(CPU_DISABLE_SSE) && defined(I686_CPU) +#define CPU_ENABLE_SSE +#endif + struct sysentvec elf32_freebsd_sysvec = { .sv_size = SYS_MAXSYSCALL, .sv_table = sysent, @@ -137,10 +141,13 @@ SYSINIT(kelf32, SI_SUB_EXEC, SI_ORDER_ANY, void elf32_dump_thread(struct thread *td, void *dst, size_t *off) { +#ifdef CPU_ENABLE_SSE void *buf; +#endif size_t len; len = 0; +#ifdef CPU_ENABLE_SSE if (use_xsave) { if (dst != NULL) { npxgetregs(td); @@ -153,6 +160,7 @@ elf32_dump_thread(struct thread *td, void *dst, size_t *off) len += elf32_populate_note(NT_X86_XSTATE, NULL, NULL, cpu_max_ext_state_size, NULL); } +#endif *off = len; } |