| /** | |
| * This file has no copyright assigned and is placed in the Public Domain. | |
| * This file is part of the w64 mingw-runtime package. | |
| * No warranty is given; refer to the file DISCLAIMER within this package. | |
| */ | |
| #ifdef _WIN64 | |
| .file "nearbyintl.S" | |
| .text | |
| .align 8 | |
| .globl _nearbyintl | |
| .def _nearbyintl; .scl 2; .type 32; .endef | |
| _nearbyintl: | |
| fldt (%rdx) | |
| movq %rcx,%r8 | |
| pushq %rax | |
| pushq %rcx | |
| fnstcw (%rsp) | |
| movq (%rsp), %rax | |
| orq $0x20, %rax | |
| movq %rax, 8(%rsp) | |
| fldcw 8(%rsp) | |
| frndint | |
| fclex | |
| fldcw (%rsp) | |
| popq %rcx | |
| popq %rax | |
| movq %r8,%rax | |
| fstpt (%r8) | |
| ret | |
| #else | |
| .file "nearbyintl.S" | |
| .text | |
| .align 4 | |
| .globl _nearbyintl | |
| .def _nearbyintl; .scl 2; .type 32; .endef | |
| _nearbyintl: | |
| fldt 4(%esp) | |
| pushl %eax | |
| pushl %ecx | |
| fnstcw (%esp) | |
| movl (%esp), %eax | |
| orl $0x20, %eax | |
| movl %eax, 4(%esp) | |
| fldcw 4(%esp) | |
| frndint | |
| fclex | |
| fldcw (%esp) | |
| popl %ecx | |
| popl %eax | |
| ret | |
| #endif |