mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-04 03:30:38 +02:00
* x86-64: fpc_frac_real further improved: memory loads of extendeds are expensive
git-svn-id: trunk@49632 -
This commit is contained in:
parent
0e3d95b589
commit
cebf880df9
@ -1,3 +1,4 @@
|
|||||||
|
|
||||||
{
|
{
|
||||||
Implementation of mathematical routines for x86_64
|
Implementation of mathematical routines for x86_64
|
||||||
|
|
||||||
@ -292,15 +293,14 @@ const
|
|||||||
oldcw,newcw: word;
|
oldcw,newcw: word;
|
||||||
asm
|
asm
|
||||||
fnstcw oldcw
|
fnstcw oldcw
|
||||||
|
fldt d
|
||||||
movw oldcw,%cx
|
movw oldcw,%cx
|
||||||
orw $0x0c3f,%cx
|
orw $0x0c3f,%cx
|
||||||
movw %cx,newcw
|
movw %cx,newcw
|
||||||
fldcw newcw
|
fldcw newcw
|
||||||
fldt d
|
fld %st
|
||||||
frndint
|
frndint
|
||||||
fldt d
|
fsubrp %st,%st(1)
|
||||||
fsub %st(1),%st
|
|
||||||
fstp %st(1)
|
|
||||||
fldcw oldcw
|
fldcw oldcw
|
||||||
fwait
|
fwait
|
||||||
end;
|
end;
|
||||||
|
Loading…
Reference in New Issue
Block a user