asm for lrint family on i386
authorRich Felker <dalias@aerifal.cx>
Mon, 19 Mar 2012 02:05:20 +0000 (22:05 -0400)
committerRich Felker <dalias@aerifal.cx>
Mon, 19 Mar 2012 02:05:20 +0000 (22:05 -0400)
src/math/i386/llrint.s [new file with mode: 0644]
src/math/i386/llrintf.s [new file with mode: 0644]
src/math/i386/llrintl.s [new file with mode: 0644]
src/math/i386/lrint.s [new file with mode: 0644]
src/math/i386/lrintf.s [new file with mode: 0644]
src/math/i386/lrintl.s [new file with mode: 0644]

diff --git a/src/math/i386/llrint.s b/src/math/i386/llrint.s
new file mode 100644 (file)
index 0000000..e961b35
--- /dev/null
@@ -0,0 +1,8 @@
+.global llrint
+.type llrint,@function
+llrint:
+       fldl 4(%esp)
+       fistpl 4(%esp)
+       mov 4(%esp),%eax
+       mov 8(%esp),%edx
+       ret
diff --git a/src/math/i386/llrintf.s b/src/math/i386/llrintf.s
new file mode 100644 (file)
index 0000000..1905cdc
--- /dev/null
@@ -0,0 +1,9 @@
+.global llrintf
+.type llrintf,@function
+llrintf:
+       sub $8,%esp
+       flds 12(%esp)
+       fistpq (%esp)
+       pop %eax
+       pop %edx
+       ret
diff --git a/src/math/i386/llrintl.s b/src/math/i386/llrintl.s
new file mode 100644 (file)
index 0000000..84e6386
--- /dev/null
@@ -0,0 +1,8 @@
+.global llrintl
+.type llrintl,@function
+llrintl:
+       fldt 4(%esp)
+       fistpl 4(%esp)
+       mov 4(%esp),%eax
+       mov 8(%esp),%edx
+       ret
diff --git a/src/math/i386/lrint.s b/src/math/i386/lrint.s
new file mode 100644 (file)
index 0000000..02b83d9
--- /dev/null
@@ -0,0 +1,7 @@
+.global lrint
+.type lrint,@function
+lrint:
+       fldl 4(%esp)
+       fistpl 4(%esp)
+       mov 4(%esp),%eax
+       ret
diff --git a/src/math/i386/lrintf.s b/src/math/i386/lrintf.s
new file mode 100644 (file)
index 0000000..907aac2
--- /dev/null
@@ -0,0 +1,7 @@
+.global lrintf
+.type lrintf,@function
+lrintf:
+       flds 4(%esp)
+       fistpl 4(%esp)
+       mov 4(%esp),%eax
+       ret
diff --git a/src/math/i386/lrintl.s b/src/math/i386/lrintl.s
new file mode 100644 (file)
index 0000000..3ae05aa
--- /dev/null
@@ -0,0 +1,7 @@
+.global lrintl
+.type lrintl,@function
+lrintl:
+       fldt 4(%esp)
+       fistpl 4(%esp)
+       mov 4(%esp),%eax
+       ret