summaryrefslogtreecommitdiff
path: root/newlib/libc/sys/sysvi386/fps.s
diff options
context:
space:
mode:
Diffstat (limited to 'newlib/libc/sys/sysvi386/fps.s')
-rw-r--r--newlib/libc/sys/sysvi386/fps.s18
1 files changed, 18 insertions, 0 deletions
diff --git a/newlib/libc/sys/sysvi386/fps.s b/newlib/libc/sys/sysvi386/fps.s
new file mode 100644
index 00000000000..83214dff404
--- /dev/null
+++ b/newlib/libc/sys/sysvi386/fps.s
@@ -0,0 +1,18 @@
+ .globl _fpgetsticky
+_fpgetsticky:
+ getpsw r0
+ and.w #0x1f00,r0
+ shl.w #0xf8,r0
+ ret #0x0
+
+
+ .globl _fpsetsticky
+_fpsetsticky:
+ getpsw r0
+ mov.w [ap],r1
+ shl.w #0x8,r1
+ updpsw.h r1,#0x1f00
+ trapfl
+ and.w #0x1f00,r0
+ shl.w #0xf8,r0
+ ret #0x0