idon't disable interrupts for creeping.
This commit is contained in:
parent
9a0393e2ce
commit
4f71103b88
29
pl/boot.yap
29
pl/boot.yap
@ -1189,41 +1189,46 @@ throw(Ball) :-
|
|||||||
( nb_getval('$trace',on) -> '$creep' ; true).
|
( nb_getval('$trace',on) -> '$creep' ; true).
|
||||||
|
|
||||||
%
|
%
|
||||||
% just leave this around to show the debugger.
|
% just prevent creeping from going on...
|
||||||
%
|
%
|
||||||
'$notrace'(G) :-
|
'$notrace'(G) :-
|
||||||
yap_hacks:disable_interrupts,
|
'$disable_creep', !,
|
||||||
(
|
(
|
||||||
|
% creep was going on...
|
||||||
yap_hacks:current_choice_point(CP0),
|
yap_hacks:current_choice_point(CP0),
|
||||||
'$execute'(G),
|
'$execute'(G),
|
||||||
yap_hacks:current_choice_point(CP1),
|
yap_hacks:current_choice_point(CP1),
|
||||||
( CP0 == CP1 ->
|
( CP0 == CP1 ->
|
||||||
!,
|
!,
|
||||||
yap_hacks:enable_interrupts
|
'$creep'
|
||||||
;
|
;
|
||||||
(
|
(
|
||||||
yap_hacks:enable_interrupts
|
'$creep'
|
||||||
;
|
;
|
||||||
yap_hacks:disable_interrupts,
|
'$disable_docreep',
|
||||||
fail
|
fail
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
;
|
;
|
||||||
yap_hacks:enable_interrupts,
|
'$creep',
|
||||||
fail
|
fail
|
||||||
).
|
).
|
||||||
|
'$notrace'(G) :-
|
||||||
|
'$execute'(G).
|
||||||
|
|
||||||
'$oncenotrace'(M:G) :-
|
'$oncenotrace'(M:G) :-
|
||||||
yap_hacks:disable_interrupts,
|
'$disable_creep', !,
|
||||||
(
|
(
|
||||||
'$execute'(G),
|
'$execute'(G)
|
||||||
!,
|
->
|
||||||
yap_hacks:enable_interrupts
|
'$creep'
|
||||||
;
|
;
|
||||||
yap_hacks:enable_interrupts,
|
'$creep',
|
||||||
fail
|
fail
|
||||||
).
|
).
|
||||||
|
'$oncenotrace'(G) :-
|
||||||
|
'$execute'(G), !.
|
||||||
|
|
||||||
|
|
||||||
'$run_at_thread_start' :-
|
'$run_at_thread_start' :-
|
||||||
recorded('$thread_initialization',M:D,_),
|
recorded('$thread_initialization',M:D,_),
|
||||||
|
Reference in New Issue
Block a user