handle running Prolog without top-level
This commit is contained in:
parent
6402360691
commit
d73c88f307
@ -2397,6 +2397,7 @@ YAP_EnterGoal(PredEntry *pe, Term *ptr, YAP_dogoalinfo *dgi)
|
|||||||
int out;
|
int out;
|
||||||
|
|
||||||
BACKUP_MACHINE_REGS();
|
BACKUP_MACHINE_REGS();
|
||||||
|
LOCAL_PrologMode = UserMode;
|
||||||
dgi->p = P;
|
dgi->p = P;
|
||||||
dgi->cp = CP;
|
dgi->cp = CP;
|
||||||
dgi->CurSlot = LOCAL_CurSlot;
|
dgi->CurSlot = LOCAL_CurSlot;
|
||||||
@ -3252,12 +3253,13 @@ YAP_Init(YAP_init_args *yap_init)
|
|||||||
Yap_AttsSize = Atts*1024;
|
Yap_AttsSize = Atts*1024;
|
||||||
else
|
else
|
||||||
Yap_AttsSize = 2048*sizeof(CELL);
|
Yap_AttsSize = 2048*sizeof(CELL);
|
||||||
|
/* reset stacks */
|
||||||
|
// Yap_StartSlots( PASS_REGS1 );
|
||||||
if (restore_result == DO_ONLY_CODE) {
|
if (restore_result == DO_ONLY_CODE) {
|
||||||
/* first, initialise the saved state */
|
/* first, initialise the saved state */
|
||||||
Term t_goal = MkAtomTerm(AtomInitProlog);
|
Term t_goal = MkAtomTerm(AtomInitProlog);
|
||||||
YAP_RunGoalOnce(t_goal);
|
YAP_RunGoalOnce(t_goal);
|
||||||
// Yap_InitYaamRegs( 0 );
|
Yap_InitYaamRegs( 0 );
|
||||||
/* reset stacks */
|
|
||||||
return YAP_BOOT_FROM_SAVED_CODE;
|
return YAP_BOOT_FROM_SAVED_CODE;
|
||||||
} else {
|
} else {
|
||||||
return YAP_BOOT_FROM_SAVED_STACKS;
|
return YAP_BOOT_FROM_SAVED_STACKS;
|
||||||
|
Reference in New Issue
Block a user