mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-18 14:49:11 +02:00
* use DefaultCW to reload fpu settings
git-svn-id: trunk@5169 -
This commit is contained in:
parent
53e7596e3d
commit
4ee9f1b394
@ -1180,7 +1180,9 @@ const
|
|||||||
FPU_StackOverflow = $40;
|
FPU_StackOverflow = $40;
|
||||||
FPU_ExceptionMask = $ff;
|
FPU_ExceptionMask = $ff;
|
||||||
|
|
||||||
|
{ use Default8087CW instead
|
||||||
fpucw : word = $1300 or FPU_StackUnderflow or FPU_Underflow or FPU_Denormal;
|
fpucw : word = $1300 or FPU_StackUnderflow or FPU_Underflow or FPU_Denormal;
|
||||||
|
}
|
||||||
|
|
||||||
MM_MaskInvalidOp = %0000000010000000;
|
MM_MaskInvalidOp = %0000000010000000;
|
||||||
MM_MaskDenorm = %0000000100000000;
|
MM_MaskDenorm = %0000000100000000;
|
||||||
@ -1196,7 +1198,7 @@ Procedure SysResetFPU;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|||||||
begin
|
begin
|
||||||
asm
|
asm
|
||||||
fninit
|
fninit
|
||||||
fldcw fpucw
|
fldcw Default8087CW
|
||||||
fwait
|
fwait
|
||||||
end;
|
end;
|
||||||
if has_sse_support then
|
if has_sse_support then
|
||||||
|
@ -175,7 +175,6 @@ var
|
|||||||
_SS : cardinal;
|
_SS : cardinal;
|
||||||
|
|
||||||
const
|
const
|
||||||
fpucw : word = $1332;
|
|
||||||
Exception_handler_installed : boolean = false;
|
Exception_handler_installed : boolean = false;
|
||||||
MAX_Level = 16;
|
MAX_Level = 16;
|
||||||
except_level : byte = 0;
|
except_level : byte = 0;
|
||||||
@ -205,10 +204,7 @@ var
|
|||||||
|
|
||||||
sigtype:=except_signal[except_level];
|
sigtype:=except_signal[except_level];
|
||||||
if reset_fpu[except_level] then
|
if reset_fpu[except_level] then
|
||||||
asm
|
SysResetFPU;
|
||||||
fninit
|
|
||||||
fldcw fpucw
|
|
||||||
end;
|
|
||||||
if assigned(System_exception_frame) then
|
if assigned(System_exception_frame) then
|
||||||
{ get the handler in front again }
|
{ get the handler in front again }
|
||||||
asm
|
asm
|
||||||
|
Loading…
Reference in New Issue
Block a user