svn commit: r215823 - head/sys/i386/isa

Dimitry Andric dim at FreeBSD.org
Thu Nov 25 18:14:18 UTC 2010


Author: dim
Date: Thu Nov 25 18:14:18 2010
New Revision: 215823
URL: http://svn.freebsd.org/changeset/base/215823

Log:
  Use unambiguous inline assembly to load a float variable.  GNU as
  silently converts 'fld' to 'flds', without taking the actual variable
  type into account (!), but clang's integrated assembler rightfully
  complains about it.
  
  Discussed with:	cperciva

Modified:
  head/sys/i386/isa/npx.c

Modified: head/sys/i386/isa/npx.c
==============================================================================
--- head/sys/i386/isa/npx.c	Thu Nov 25 16:21:56 2010	(r215822)
+++ head/sys/i386/isa/npx.c	Thu Nov 25 18:14:18 2010	(r215823)
@@ -938,7 +938,7 @@ fpu_clean_state(void)
 	 * the x87 stack, but we don't care since we're about to call
 	 * fxrstor() anyway.
 	 */
-	__asm __volatile("ffree %%st(7); fld %0" : : "m" (dummy_variable));
+	__asm __volatile("ffree %%st(7); flds %0" : : "m" (dummy_variable));
 }
 #endif /* CPU_ENABLE_SSE */
 


More information about the svn-src-all mailing list