git-svn-id: svn://svn.valgrind.org/vex/trunk@627
--- /dev/null
+
+#include <stdio.h>
+
+void mxcsr_default ( void )
+{
+ asm(" pushl $0x1F80 ; ldmxcsr (%esp) ; addl $4, %esp");
+}
+
+void mxcsr_exns ( void )
+{
+ asm(" pushl $0x1F00 ; ldmxcsr (%esp) ; addl $4, %esp");
+}
+
+/* PIII doesn't have DAZ, so this segfaults (!) on PIII. */a
+void mxcsr_daz ( void )
+{
+ asm(" pushl $0x1FC0 ; ldmxcsr (%esp) ; addl $4, %esp");
+}
+
+void mxcsr_fz ( void )
+{
+ asm(" pushl $0x9F80 ; ldmxcsr (%esp) ; addl $4, %esp");
+}
+
+
+int main ( void )
+{
+ printf("default\n");
+ mxcsr_default();
+ printf("\n");
+
+ printf("exns\n");
+ mxcsr_exns();
+ printf("\n");
+
+ printf("daz\n");
+ mxcsr_daz();
+ printf("\n");
+
+ printf("fz\n");
+ mxcsr_fz();
+ printf("\n");
+
+ return 0;
+}