cvs commit: src/sys/i386/gnu/fpemul fpu_system.h src/sys/i386/i386 bcopy.s genassym.c math_emu.h pmap.c swtch.s vm86bios.s vm_machdep.c src/sys/i386/include pcb.h thread.h src/sys/i386/isa npx.c

Matthew Dillon dillon at crater.dragonflybsd.org
Thu Apr 29 18:00:48 PDT 2004


dillon      2004/04/29 17:59:55 PDT

DragonFly src repository

  Modified files:
    sys/i386/gnu/fpemul  fpu_system.h 
    sys/i386/i386        bcopy.s genassym.c math_emu.h pmap.c 
                         swtch.s vm86bios.s vm_machdep.c 
    sys/i386/include     pcb.h thread.h 
    sys/i386/isa         npx.c 
  Log:
  Correct a bug in the last FPU optimized bcopy commit.  The user FPU state
  was being corrupted by interrupts.
  
  Fix the bug by implementing a feature described as a missif in the original
  FreeBSD comments... add a pointer to the FP saved state in the thread
  structure so routines which 'borrow' the FP unit can simply revector the
  pointer temporarily to avoid corruption of the original user FP state.
  
  The MMX_*_BLOCK macros in bcopy.s have also been simplified somewhat.  We
  can simplify them even more (in the future) by reserving FPU save space in
  the per-cpu structure instead of on the stack.
  
  Revision  Changes    Path
  1.3       +2 -2      src/sys/i386/gnu/fpemul/fpu_system.h
  1.2       +35 -50    src/sys/i386/i386/bcopy.s
  1.38      +1 -0      src/sys/i386/i386/genassym.c
  1.5       +2 -2      src/sys/i386/i386/math_emu.h
  1.35      +1 -0      src/sys/i386/i386/pmap.c
  1.33      +5 -8      src/sys/i386/i386/swtch.s
  1.12      +6 -4      src/sys/i386/i386/vm86bios.s
  1.30      +1 -1      src/sys/i386/i386/vm_machdep.c
  1.9       +0 -7      src/sys/i386/include/pcb.h
  1.6       +6 -2      src/sys/i386/include/thread.h
  1.15      +12 -12    src/sys/i386/isa/npx.c


http://www.dragonflybsd.org/cvsweb/src/sys/i386/gnu/fpemul/fpu_system.h.diff?r1=1.2&r2=1.3&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/i386/bcopy.s.diff?r1=1.1&r2=1.2&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/i386/genassym.c.diff?r1=1.37&r2=1.38&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/i386/math_emu.h.diff?r1=1.4&r2=1.5&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/i386/pmap.c.diff?r1=1.34&r2=1.35&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/i386/swtch.s.diff?r1=1.32&r2=1.33&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/i386/vm86bios.s.diff?r1=1.11&r2=1.12&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/i386/vm_machdep.c.diff?r1=1.29&r2=1.30&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/include/pcb.h.diff?r1=1.8&r2=1.9&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/include/thread.h.diff?r1=1.5&r2=1.6&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/isa/npx.c.diff?r1=1.14&r2=1.15&f=h





More information about the Commits mailing list