improve handling of local stack expansion.
This commit is contained in:
parent
f5e1b6d029
commit
e62ae6be36
@ -62,7 +62,10 @@ inline EXTERN CELL *PtoDelayAdjust (CELL *);
|
|||||||
inline EXTERN CELL *
|
inline EXTERN CELL *
|
||||||
PtoDelayAdjust (CELL * ptr)
|
PtoDelayAdjust (CELL * ptr)
|
||||||
{
|
{
|
||||||
|
if (!GSplit || ptr < GSplit)
|
||||||
return (CELL *) (((CELL *) (CharP (ptr) + DelayDiff)));
|
return (CELL *) (((CELL *) (CharP (ptr) + DelayDiff)));
|
||||||
|
else
|
||||||
|
return (CELL *) (((CELL *) (CharP (ptr) + GDiff0)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -149,7 +152,10 @@ inline EXTERN CELL DelayAdjust (CELL);
|
|||||||
inline EXTERN CELL
|
inline EXTERN CELL
|
||||||
DelayAdjust (CELL val)
|
DelayAdjust (CELL val)
|
||||||
{
|
{
|
||||||
|
if (!GSplit || (CELL *)val < GSplit)
|
||||||
return (CELL) (val + DelayDiff);
|
return (CELL) (val + DelayDiff);
|
||||||
|
else
|
||||||
|
return (CELL) (val + GDiff0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -173,7 +179,10 @@ inline EXTERN ADDR DelayAddrAdjust (ADDR);
|
|||||||
inline EXTERN ADDR
|
inline EXTERN ADDR
|
||||||
DelayAddrAdjust (ADDR ptr)
|
DelayAddrAdjust (ADDR ptr)
|
||||||
{
|
{
|
||||||
|
if (!GSplit || (CELL *)ptr < GSplit)
|
||||||
return (ADDR) ((ptr + DelayDiff));
|
return (ADDR) ((ptr + DelayDiff));
|
||||||
|
else
|
||||||
|
return (ADDR) ((ptr + GDiff0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user