Changeset 46548 in vbox for trunk/src/VBox/Runtime/common/math
- Timestamp:
- Jun 14, 2013 9:42:21 AM (12 years ago)
- svn:sync-xref-src-repo-rev:
- 86409
- Location:
- trunk/src/VBox/Runtime/common/math
- Files:
-
- 17 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/common/math/ceill.asm
r44528 r46548 39 39 sub xSP, 10h 40 40 41 fld tword [xBP + x S*2]41 fld tword [xBP + xCB*2] 42 42 43 43 ; Make it round up by modifying the fpu control word. -
trunk/src/VBox/Runtime/common/math/cosl.asm
r44528 r46548 32 32 ; compute the cosine of ldr, measured in radians. 33 33 ; @returns st(0) 34 ; @param lrd [rbp + x S*2]34 ; @param lrd [rbp + xCB*2] 35 35 BEGINPROC RT_NOCRT(cosl) 36 36 push xBP … … 38 38 sub xSP, 10h 39 39 40 fld tword [xBP + x S*2]40 fld tword [xBP + xCB*2] 41 41 fcos 42 42 fnstsw ax -
trunk/src/VBox/Runtime/common/math/fabs.asm
r44528 r46548 49 49 50 50 %else 51 fld qword [xBP + x S*2]51 fld qword [xBP + xCB*2] 52 52 fabs 53 53 %endif -
trunk/src/VBox/Runtime/common/math/fabsf.asm
r44528 r46548 49 49 50 50 %else 51 fld dword [xBP + x S*2]51 fld dword [xBP + xCB*2] 52 52 fabs 53 53 %endif -
trunk/src/VBox/Runtime/common/math/fabsl.asm
r44528 r46548 32 32 ; Compute the absolute value of lrd (|lrd|). 33 33 ; @returns st(0) 34 ; @param lrd [xSP + x S*2]34 ; @param lrd [xSP + xCB*2] 35 35 BEGINPROC RT_NOCRT(fabsl) 36 36 push xBP 37 37 mov xBP, xSP 38 38 39 fld tword [xBP + x S*2]39 fld tword [xBP + xCB*2] 40 40 fabs 41 41 -
trunk/src/VBox/Runtime/common/math/floor.asm
r44528 r46548 42 42 fld qword [xSP] 43 43 %else 44 fld qword [xBP + x S*2]44 fld qword [xBP + xCB*2] 45 45 %endif 46 46 -
trunk/src/VBox/Runtime/common/math/floorf.asm
r44528 r46548 42 42 fld dword [xSP] 43 43 %else 44 fld dword [xBP + x S*2]44 fld dword [xBP + xCB*2] 45 45 %endif 46 46 -
trunk/src/VBox/Runtime/common/math/floorl.asm
r44528 r46548 38 38 sub xSP, 10h 39 39 40 fld tword [xBP + x S*2]40 fld tword [xBP + xCB*2] 41 41 42 42 ; Make it round down by modifying the fpu control word. -
trunk/src/VBox/Runtime/common/math/ldexpl.asm
r44528 r46548 32 32 ; Computes lrd * 2^exp 33 33 ; @returns st(0) 34 ; @param lrd [rbp + x S*2]34 ; @param lrd [rbp + xCB*2] 35 35 ; @param exp [ebp + 14h] GCC:edi MSC:ecx 36 36 BEGINPROC RT_NOCRT(ldexpl) … … 44 44 fild dword [rsp] 45 45 %else 46 fild dword [ebp + x S*2 + RTLRD_CB]46 fild dword [ebp + xCB*2 + RTLRD_CB] 47 47 %endif 48 fld tword [xBP + x S*2]48 fld tword [xBP + xCB*2] 49 49 fscale 50 50 fstp st1 -
trunk/src/VBox/Runtime/common/math/llrintl.asm
r44528 r46548 32 32 ; Round rd to the nearest integer value, rounding according to the current rounding direction. 33 33 ; @returns 32-bit: edx:eax 64-bit: rax 34 ; @param lrd [rbp + x S*2]34 ; @param lrd [rbp + xCB*2] 35 35 BEGINPROC RT_NOCRT(llrintl) 36 36 push xBP … … 38 38 sub xSP, 10h 39 39 40 fld tword [xBP + x S*2]40 fld tword [xBP + xCB*2] 41 41 fistp qword [xSP] 42 42 fwait -
trunk/src/VBox/Runtime/common/math/logl.asm
r44528 r46548 32 32 ; compute the natural logarithm of lrd 33 33 ; @returns st(0) 34 ; @param lrd [rbp + x S*2]34 ; @param lrd [rbp + xCB*2] 35 35 BEGINPROC RT_NOCRT(logl) 36 36 push xBP … … 39 39 40 40 fldln2 ; st0=log(2) 41 fld tword [xBP + x S*2]; st1=log(2) st0=lrd41 fld tword [xBP + xCB*2] ; st1=log(2) st0=lrd 42 42 fld st0 ; st1=log(2) st0=lrd st0=lrd 43 43 fsub qword [.one xWrtRIP] ; st2=log(2) st1=lrd st0=lrd-1.0 -
trunk/src/VBox/Runtime/common/math/lrintl.asm
r44528 r46548 32 32 ; Round rd to the nearest integer value, rounding according to the current rounding direction. 33 33 ; @returns 32-bit: eax 64-bit: rax 34 ; @param lrd [rbp + x S*2]34 ; @param lrd [rbp + xCB*2] 35 35 BEGINPROC RT_NOCRT(lrintl) 36 36 push xBP … … 38 38 sub xSP, 10h 39 39 40 fld tword [xBP + x S*2]40 fld tword [xBP + xCB*2] 41 41 %ifdef RT_ARCH_AMD64 42 42 fistp qword [xSP] -
trunk/src/VBox/Runtime/common/math/sinl.asm
r44528 r46548 32 32 ; Compute the sine of lrd 33 33 ; @returns st(0) 34 ; @param lrd [xSP + x S*2]34 ; @param lrd [xSP + xCB*2] 35 35 BEGINPROC RT_NOCRT(sinl) 36 36 push xBP … … 38 38 sub xSP, 10h 39 39 40 fld tword [xBP + x S*2]40 fld tword [xBP + xCB*2] 41 41 fsin 42 42 fnstsw ax -
trunk/src/VBox/Runtime/common/math/tanl.asm
r44528 r46548 32 32 ; Compute the sine of lrd 33 33 ; @returns st(0) 34 ; @param lrd [xSP + x S*2]34 ; @param lrd [xSP + xCB*2] 35 35 BEGINPROC RT_NOCRT(tanl) 36 36 push xBP … … 38 38 sub xSP, 10h 39 39 40 fld tword [xBP + x S*2]40 fld tword [xBP + xCB*2] 41 41 fptan 42 42 fnstsw ax -
trunk/src/VBox/Runtime/common/math/trunc.asm
r44528 r46548 43 43 fld qword [xSP] 44 44 %else 45 fld qword [xBP + x S*2]45 fld qword [xBP + xCB*2] 46 46 %endif 47 47 -
trunk/src/VBox/Runtime/common/math/truncf.asm
r44528 r46548 43 43 fld dword [xSP] 44 44 %else 45 fld dword [xBP + x S*2]45 fld dword [xBP + xCB*2] 46 46 %endif 47 47 -
trunk/src/VBox/Runtime/common/math/truncl.asm
r44528 r46548 39 39 sub xSP, 10h 40 40 41 fld tword [xBP + x S*2]41 fld tword [xBP + xCB*2] 42 42 43 43 ; Make it truncate up by modifying the fpu control word.
Note:
See TracChangeset
for help on using the changeset viewer.