From 079d7e43caaef61f2394ad46e2abe63ea1d3845c Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Thu, 25 Nov 2010 18:14:18 +0000 Subject: [PATCH] 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 --- sys/i386/isa/npx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/i386/isa/npx.c b/sys/i386/isa/npx.c index f8dc11c6cb9..8d37562244d 100644 --- a/sys/i386/isa/npx.c +++ b/sys/i386/isa/npx.c @@ -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 */