x86_64 math asm, long double functions only
[musl] / src / math / x86_64 / floorl.s
1 .global floorl
2 .type floorl,@function
3 floorl:
4         fldt 8(%rsp)
5 1:      mov $0x7,%al
6 1:      fstcw 8(%rsp)
7         mov 9(%rsp),%ah
8         mov %al,9(%rsp)
9         fldcw 8(%rsp)
10         frndint
11         mov %ah,9(%rsp)
12         fldcw 8(%rsp)
13         ret
14
15 .global ceill
16 .type ceill,@function
17 ceill:
18         fldt 8(%rsp)
19         mov $0xb,%al
20         jmp 1b
21
22 .global truncl
23 .type truncl,@function
24 truncl:
25         fldt 8(%rsp)
26         mov $0xf,%al
27         jmp 1b