git-svn-id: trunk@29554 -
@@ -64,6 +64,14 @@ end;
procedure CheckStack;
var
newval : pointer;
+{$ifdef cpui386}
+ { Test tag word of coprocessor }
+ {$asmmode att}
+ fpusave : record
+ Ctrl, Status,Tag : dword;
+ other : array [1..512] of byte;
+ end;
+{$endif}
begin
{$ifdef HAS_GET_FRAME}
newval:=Get_Frame;
@@ -75,6 +83,14 @@ begin
' to 0x',hexstr(ptruint(newval),2*sizeof(ptruint)));
Stackval:=newval;
end;
+ {$ifdef cpui386}
+ asm
+ fnsave fpusave
+ frstor fpusave
+ if ((fpusave.tag and $ffff)<>$ffff) then
+ Writeln('Tag word not $ffff, ',hexstr((fpusave.tag and $ffff),4));
+ {$endif}
{$endif UseStackCheck}