1 2#define FN(x) .type x,@function; .global x; x 3#define ENT subl $16, %esp 4#define RET addl $16, %esp; ret 5 6 .file "setfcr-Linux-386.S" 7FN(setfcr): 8 ENT 9 xorb $0x3f, %al 10 movl %eax, (%esp) 11 fwait 12 fldcw (%esp) 13 RET 14 15FN(getfcr): 16 ENT 17 fwait 18 fstcw (%esp) 19 movw (%esp), %ax 20 andl $0xffff, %eax 21 xorb $0x3f, %al 22 RET 23 24FN(getfsr): 25 ENT 26 fwait 27 fstsw (%esp) 28 movw (%esp), %ax 29 andl $0xffff, %eax 30 RET 31 32FN(setfsr): 33 fclex 34 ret 35