diff --git a/test/fldenv.c b/test/fldenv.c
new file mode 100644
index 0000000..4f37d61
--- /dev/null
+++ b/test/fldenv.c
@@ -0,0 +1,32 @@
+
+#include <stdio.h>
+#include <stdlib.h>
+
+void do_fstenv ( void* p )
+{
+   asm("movl 8(%esp), %eax ; fstenv (%eax)");
+}
+
+void do_fldenv ( void* p )
+{
+   asm("movl 8(%esp), %eax ; fldenv (%eax)");
+}
+
+int main ( void )
+{
+   int i;
+   unsigned short* buf = malloc(14*sizeof(short));
+   for (i = 0; i < 14; i++)
+      buf[i] = i;
+   buf[0] = 0x037f;
+
+   do_fldenv(buf);
+   do_fstenv(buf);
+   for (i = 0; i < 14; i++) {
+      printf("%04x ", buf[i]);
+      if (i > 0 && ((i % 12) == 11))
+          printf("\n");
+   }
+   printf("\n");
+   return 0;
+}
