svn commit: r350899 - head/sys/powerpc/powerpc

Leandro Lupori luporl at FreeBSD.org
Mon Aug 12 12:51:48 UTC 2019


Author: luporl
Date: Mon Aug 12 12:51:47 2019
New Revision: 350899
URL: https://svnweb.freebsd.org/changeset/base/350899

Log:
  [PPC64] Save FPU registers before enabling VSX
  
  Fixed trap handler logic, in order to make it save FPU registers,
  if FPU is enabled, before enabling VSX. Without this change, FPU
  register contents were being lost when set before VSX was enabled.

Modified:
  head/sys/powerpc/powerpc/trap.c

Modified: head/sys/powerpc/powerpc/trap.c
==============================================================================
--- head/sys/powerpc/powerpc/trap.c	Mon Aug 12 12:05:40 2019	(r350898)
+++ head/sys/powerpc/powerpc/trap.c	Mon Aug 12 12:51:47 2019	(r350899)
@@ -295,7 +295,7 @@ trap(struct trapframe *frame)
 			    ("VSX already enabled for thread"));
 			if (!(td->td_pcb->pcb_flags & PCB_VEC))
 				enable_vec(td);
-			if (!(td->td_pcb->pcb_flags & PCB_FPU))
+			if (td->td_pcb->pcb_flags & PCB_FPU)
 				save_fpu(td);
 			td->td_pcb->pcb_flags |= PCB_VSX;
 			enable_fpu(td);


More information about the svn-src-all mailing list