asm for floor/ceil/trunc
This commit is contained in:
@@ -0,0 +1 @@
|
||||
# see floor.s
|
||||
@@ -0,0 +1 @@
|
||||
# see floor.s
|
||||
@@ -0,0 +1 @@
|
||||
# see floor.s
|
||||
@@ -0,0 +1,67 @@
|
||||
.global floorf
|
||||
.type floorf,@function
|
||||
floorf:
|
||||
flds 4(%esp)
|
||||
jmp 1f
|
||||
|
||||
.global floorl
|
||||
.type floorl,@function
|
||||
floorl:
|
||||
fldt 4(%esp)
|
||||
jmp 1f
|
||||
|
||||
.global floor
|
||||
.type floor,@function
|
||||
floor:
|
||||
fldl 4(%esp)
|
||||
1: mov $0x7,%al
|
||||
1: fstcw 4(%esp)
|
||||
mov 5(%esp),%ah
|
||||
mov %al,5(%esp)
|
||||
fldcw 4(%esp)
|
||||
frndint
|
||||
mov %ah,5(%esp)
|
||||
fldcw 4(%esp)
|
||||
ret
|
||||
|
||||
.global ceil
|
||||
.type ceil,@function
|
||||
ceil:
|
||||
fldl 4(%esp)
|
||||
mov $0xb,%al
|
||||
jmp 1b
|
||||
|
||||
.global ceilf
|
||||
.type ceilf,@function
|
||||
ceilf:
|
||||
flds 4(%esp)
|
||||
mov $0xb,%al
|
||||
jmp 1b
|
||||
|
||||
.global ceill
|
||||
.type ceill,@function
|
||||
ceill:
|
||||
fldt 4(%esp)
|
||||
mov $0xb,%al
|
||||
jmp 1b
|
||||
|
||||
.global trunc
|
||||
.type trunc,@function
|
||||
trunc:
|
||||
fldl 4(%esp)
|
||||
mov $0xf,%al
|
||||
jmp 1b
|
||||
|
||||
.global truncf
|
||||
.type truncf,@function
|
||||
truncf:
|
||||
flds 4(%esp)
|
||||
mov $0xf,%al
|
||||
jmp 1b
|
||||
|
||||
.global truncl
|
||||
.type truncl,@function
|
||||
truncl:
|
||||
fldt 4(%esp)
|
||||
mov $0xf,%al
|
||||
jmp 1b
|
||||
@@ -0,0 +1 @@
|
||||
# see floor.s
|
||||
@@ -0,0 +1 @@
|
||||
# see floor.s
|
||||
@@ -0,0 +1 @@
|
||||
# see floor.s
|
||||
@@ -0,0 +1 @@
|
||||
# see floor.s
|
||||
@@ -0,0 +1 @@
|
||||
# see floor.s
|
||||
Reference in New Issue
Block a user