mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 12:29:25 +02:00
Checkpointer: consider bss section too for go32v2 (webtbs/tw3661 now works)
git-svn-id: trunk@10967 -
This commit is contained in:
parent
416e43903b
commit
50cd527d30
@ -885,7 +885,7 @@ end;
|
||||
var
|
||||
__stklen : longword;external name '__stklen';
|
||||
__stkbottom : longword;external name '__stkbottom';
|
||||
edata : longword; external name 'edata';
|
||||
ebss : longword; external name 'end';
|
||||
{$endif go32v2}
|
||||
|
||||
{$ifdef linux}
|
||||
@ -929,7 +929,7 @@ var
|
||||
loc_info: pheap_info;
|
||||
{$ifdef go32v2}
|
||||
get_ebp,stack_top : longword;
|
||||
data_end : longword;
|
||||
bss_end : longword;
|
||||
{$endif go32v2}
|
||||
{$ifdef morphos}
|
||||
stack_top: longword;
|
||||
@ -953,12 +953,12 @@ begin
|
||||
runerror(216);
|
||||
asm
|
||||
movl %ebp,get_ebp
|
||||
leal edata,%eax
|
||||
movl %eax,data_end
|
||||
leal ebss,%eax
|
||||
movl %eax,bss_end
|
||||
end;
|
||||
stack_top:=__stkbottom+__stklen;
|
||||
{ allow all between start of code and end of data }
|
||||
if ptruint(p)<=data_end then
|
||||
{ allow all between start of code and end of bss }
|
||||
if ptruint(p)<=bss_end then
|
||||
goto _exit;
|
||||
{ stack can be above heap !! }
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user