fix prolog_flags for chr.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1802 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
parent
621e47f8a4
commit
e10bb2a6ae
@ -3772,6 +3772,7 @@ call_gc(UInt gc_lim, Int predarity, CELL *current_env, yamop *nextop)
|
|||||||
(ASP-H0)*sizeof(CELL) > gc_lim &&
|
(ASP-H0)*sizeof(CELL) > gc_lim &&
|
||||||
H-H0 > (LCL0-ASP)/2) {
|
H-H0 > (LCL0-ASP)/2) {
|
||||||
effectiveness = do_gc(predarity, current_env, nextop);
|
effectiveness = do_gc(predarity, current_env, nextop);
|
||||||
|
Yap_atom_gc();
|
||||||
if (effectiveness < 0)
|
if (effectiveness < 0)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
if (effectiveness > 90) {
|
if (effectiveness > 90) {
|
||||||
|
3
C/init.c
3
C/init.c
@ -849,6 +849,7 @@ InitFlags(void)
|
|||||||
#else
|
#else
|
||||||
yap_flags[ALLOW_ASSERTING_STATIC_FLAG] = TRUE;
|
yap_flags[ALLOW_ASSERTING_STATIC_FLAG] = TRUE;
|
||||||
#endif
|
#endif
|
||||||
|
yap_flags[GENERATE_DEBUG_INFO_FLAG] = TRUE;
|
||||||
/* current default */
|
/* current default */
|
||||||
yap_flags[INDEXING_MODE_FLAG] = INDEX_MODE_MULTI;
|
yap_flags[INDEXING_MODE_FLAG] = INDEX_MODE_MULTI;
|
||||||
yap_flags[TABLING_MODE_FLAG] = 0;
|
yap_flags[TABLING_MODE_FLAG] = 0;
|
||||||
@ -1402,7 +1403,7 @@ Yap_InitWorkspace(int Heap, int Stack, int Trail, int max_table_size,
|
|||||||
/* InitAbsmi must be done before InitCodes */
|
/* InitAbsmi must be done before InitCodes */
|
||||||
/* This must be done before initialising predicates */
|
/* This must be done before initialising predicates */
|
||||||
Yap_heap_regs->system_pred_goal_expansion_func = FALSE;
|
Yap_heap_regs->system_pred_goal_expansion_func = FALSE;
|
||||||
for (i = 0; i <= TABLING_MODE_FLAG; i++) {
|
for (i = 0; i <= LAST_FLAG; i++) {
|
||||||
yap_flags[i] = 0;
|
yap_flags[i] = 0;
|
||||||
}
|
}
|
||||||
GcCalls = 0;
|
GcCalls = 0;
|
||||||
|
10
C/stdpreds.c
10
C/stdpreds.c
@ -11,8 +11,11 @@
|
|||||||
* File: stdpreds.c *
|
* File: stdpreds.c *
|
||||||
* comments: General-purpose C implemented system predicates *
|
* comments: General-purpose C implemented system predicates *
|
||||||
* *
|
* *
|
||||||
* Last rev: $Date: 2007-01-28 14:26:37 $,$Author: vsc $ *
|
* Last rev: $Date: 2007-02-26 10:41:40 $,$Author: vsc $ *
|
||||||
* $Log: not supported by cvs2svn $
|
* $Log: not supported by cvs2svn $
|
||||||
|
* Revision 1.117 2007/01/28 14:26:37 vsc
|
||||||
|
* WIN32 support
|
||||||
|
*
|
||||||
* Revision 1.116 2006/12/13 16:10:23 vsc
|
* Revision 1.116 2006/12/13 16:10:23 vsc
|
||||||
* several debugger and CLP(BN) improvements.
|
* several debugger and CLP(BN) improvements.
|
||||||
*
|
*
|
||||||
@ -3364,6 +3367,11 @@ p_set_yap_flags(void)
|
|||||||
return(FALSE);
|
return(FALSE);
|
||||||
yap_flags[STACK_DUMP_ON_ERROR_FLAG] = value;
|
yap_flags[STACK_DUMP_ON_ERROR_FLAG] = value;
|
||||||
break;
|
break;
|
||||||
|
case GENERATE_DEBUG_INFO_FLAG:
|
||||||
|
if (value != 0 && value != 1)
|
||||||
|
return(FALSE);
|
||||||
|
yap_flags[GENERATE_DEBUG_INFO_FLAG] = value;
|
||||||
|
break;
|
||||||
case INDEXING_MODE_FLAG:
|
case INDEXING_MODE_FLAG:
|
||||||
if (value < INDEX_MODE_OFF || value > INDEX_MODE_MAX)
|
if (value < INDEX_MODE_OFF || value > INDEX_MODE_MAX)
|
||||||
return(FALSE);
|
return(FALSE);
|
||||||
|
10
H/Yap.h
10
H/Yap.h
@ -10,7 +10,7 @@
|
|||||||
* File: Yap.h.m4 *
|
* File: Yap.h.m4 *
|
||||||
* mods: *
|
* mods: *
|
||||||
* comments: main header file for YAP *
|
* comments: main header file for YAP *
|
||||||
* version: $Id: Yap.h,v 1.20 2007-02-18 00:26:36 vsc Exp $ *
|
* version: $Id: Yap.h,v 1.21 2007-02-26 10:41:40 vsc Exp $ *
|
||||||
*************************************************************************/
|
*************************************************************************/
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
@ -514,9 +514,11 @@ typedef enum
|
|||||||
HALT_AFTER_CONSULT_FLAG = 15,
|
HALT_AFTER_CONSULT_FLAG = 15,
|
||||||
FAST_BOOT_FLAG = 16,
|
FAST_BOOT_FLAG = 16,
|
||||||
STACK_DUMP_ON_ERROR_FLAG = 17,
|
STACK_DUMP_ON_ERROR_FLAG = 17,
|
||||||
INDEXING_MODE_FLAG = 18,
|
GENERATE_DEBUG_INFO_FLAG = 18,
|
||||||
|
INDEXING_MODE_FLAG = 19,
|
||||||
|
TABLING_MODE_FLAG = 20,
|
||||||
/* let this be the last one */
|
/* let this be the last one */
|
||||||
TABLING_MODE_FLAG = 19
|
LAST_FLAG = 21
|
||||||
} yap_flags;
|
} yap_flags;
|
||||||
|
|
||||||
#define STRING_AS_CHARS 0
|
#define STRING_AS_CHARS 0
|
||||||
@ -560,7 +562,7 @@ typedef enum
|
|||||||
YAP_AGC_SIGNAL = 0x20000 /* call atom garbage collector asap */
|
YAP_AGC_SIGNAL = 0x20000 /* call atom garbage collector asap */
|
||||||
} yap_signals;
|
} yap_signals;
|
||||||
|
|
||||||
#define NUMBER_OF_YAP_FLAGS TABLING_MODE_FLAG + 1
|
#define NUMBER_OF_YAP_FLAGS LAST_FLAG
|
||||||
|
|
||||||
/************************ prototypes **********************************/
|
/************************ prototypes **********************************/
|
||||||
|
|
||||||
|
@ -6549,7 +6549,7 @@ Just fail
|
|||||||
@findex system_options (yap_flag/2 option)
|
@findex system_options (yap_flag/2 option)
|
||||||
@* This read only flag tells which options were used to compile
|
@* This read only flag tells which options were used to compile
|
||||||
YAP. Currently it informs whether the system supports
|
YAP. Currently it informs whether the system supports
|
||||||
@code{coroutining}, @code{depth_limit}, the @code{low_level_tracer},
|
@code{coroutining}, @code{depth_limit}, @code{low_level_tracer},
|
||||||
@code{or-parallelism}, @code{rational_trees}, @code{tabling},
|
@code{or-parallelism}, @code{rational_trees}, @code{tabling},
|
||||||
@code{threads}, or the @code{wam_profiler}.
|
@code{threads}, or the @code{wam_profiler}.
|
||||||
|
|
||||||
|
@ -213,6 +213,7 @@ use_module(M,F,Is) :-
|
|||||||
'$change_alias_to_stream'('$loop_stream',Stream),
|
'$change_alias_to_stream'('$loop_stream',Stream),
|
||||||
get_value('$consulting',Old),
|
get_value('$consulting',Old),
|
||||||
set_value('$consulting',false),
|
set_value('$consulting',false),
|
||||||
|
'$access_yap_flags'(18,GenerateDebug),
|
||||||
'$consult_infolevel'(InfLevel),
|
'$consult_infolevel'(InfLevel),
|
||||||
recorda('$initialisation','$',_),
|
recorda('$initialisation','$',_),
|
||||||
( Reconsult = reconsult ->
|
( Reconsult = reconsult ->
|
||||||
@ -241,6 +242,7 @@ use_module(M,F,Is) :-
|
|||||||
true
|
true
|
||||||
),
|
),
|
||||||
'$change_alias_to_stream'('$loop_stream',OldStream),
|
'$change_alias_to_stream'('$loop_stream',OldStream),
|
||||||
|
'$set_yap_flags'(18,GenerateDebug),
|
||||||
set_value('$consulting',Old),
|
set_value('$consulting',Old),
|
||||||
set_value('$consulting_file',OldF),
|
set_value('$consulting_file',OldF),
|
||||||
cd(OldD),
|
cd(OldD),
|
||||||
|
@ -189,16 +189,21 @@ yap_flag(syntax_errors, Option) :-
|
|||||||
% compatibility flag
|
% compatibility flag
|
||||||
yap_flag(enhanced,on) :- !, set_value('$enhanced',true).
|
yap_flag(enhanced,on) :- !, set_value('$enhanced',true).
|
||||||
yap_flag(enhanced,off) :- set_value('$enhanced',[]).
|
yap_flag(enhanced,off) :- set_value('$enhanced',[]).
|
||||||
|
|
||||||
%
|
%
|
||||||
% SWI compatibility flag
|
% SWI compatibility flag
|
||||||
%
|
%
|
||||||
yap_flag(generate_debug_info,V) :- var(V), !,
|
|
||||||
source_mode(OnOff,OnOff),
|
|
||||||
(OnOff = on -> V = true ; V = false).
|
|
||||||
yap_flag(generate_debug_info,true) :- !.
|
|
||||||
yap_flag(generate_debug_info,false) :- !.
|
|
||||||
yap_flag(generate_debug_info,X) :-
|
yap_flag(generate_debug_info,X) :-
|
||||||
'$do_error'(domain_error(flag_value,generate_domain_info+X),yap_flag(generate_debug_info,X)).
|
var(X), !,
|
||||||
|
'$access_yap_flags'(18,Options),
|
||||||
|
(Options =:= 0 -> X = false ; X = true ).
|
||||||
|
yap_flag(generate_debug_info,true) :- !,
|
||||||
|
'$set_yap_flags'(18,1).
|
||||||
|
yap_flag(generate_debug_info,false) :- !,
|
||||||
|
'$set_yap_flags'(18,0).
|
||||||
|
yap_flag(generate_debug_info,X) :-
|
||||||
|
'$do_error'(domain_error(flag_value,generate_debugging_info+X),yap_flag(generate_debugging_info,X)).
|
||||||
|
|
||||||
%
|
%
|
||||||
% show state of $
|
% show state of $
|
||||||
%
|
%
|
||||||
@ -232,11 +237,11 @@ yap_flag(bounded,X) :-
|
|||||||
|
|
||||||
% do or do not indexation
|
% do or do not indexation
|
||||||
yap_flag(index,X) :- var(X),
|
yap_flag(index,X) :- var(X),
|
||||||
'$access_yap_flags'(18, X1),
|
'$access_yap_flags'(19, X1),
|
||||||
'$transl_to_index_mode'(X1,X), !.
|
'$transl_to_index_mode'(X1,X), !.
|
||||||
yap_flag(index,X) :-
|
yap_flag(index,X) :-
|
||||||
'$transl_to_index_mode'(X1,X), !,
|
'$transl_to_index_mode'(X1,X), !,
|
||||||
'$set_yap_flags'(18,X1).
|
'$set_yap_flags'(19,X1).
|
||||||
yap_flag(index,X) :-
|
yap_flag(index,X) :-
|
||||||
'$do_error'(domain_error(flag_value,index+X),yap_flag(index,X)).
|
'$do_error'(domain_error(flag_value,index+X),yap_flag(index,X)).
|
||||||
|
|
||||||
@ -254,7 +259,7 @@ yap_flag(home,X) :-
|
|||||||
% tabling mode
|
% tabling mode
|
||||||
yap_flag(tabling_mode,Options) :-
|
yap_flag(tabling_mode,Options) :-
|
||||||
var(Options), !,
|
var(Options), !,
|
||||||
'$access_yap_flags'(19,Options).
|
'$access_yap_flags'(20,Options).
|
||||||
yap_flag(tabling_mode,[]) :- !.
|
yap_flag(tabling_mode,[]) :- !.
|
||||||
yap_flag(tabling_mode,[HOption|TOption]) :- !,
|
yap_flag(tabling_mode,[HOption|TOption]) :- !,
|
||||||
yap_flag(tabling_mode,HOption),
|
yap_flag(tabling_mode,HOption),
|
||||||
@ -264,7 +269,7 @@ yap_flag(tabling_mode,(Option1,Option2)) :- !,
|
|||||||
yap_flag(tabling_mode,Option2).
|
yap_flag(tabling_mode,Option2).
|
||||||
yap_flag(tabling_mode,Option) :-
|
yap_flag(tabling_mode,Option) :-
|
||||||
'$transl_to_tabling_mode'(Flag,Option),
|
'$transl_to_tabling_mode'(Flag,Option),
|
||||||
'$set_yap_flags'(19,Flag).
|
'$set_yap_flags'(20,Flag).
|
||||||
yap_flag(tabling_mode,Options) :-
|
yap_flag(tabling_mode,Options) :-
|
||||||
'$do_error'(domain_error(flag_value,tabling_mode+Options),yap_flag(tabling_mode,Options)).
|
'$do_error'(domain_error(flag_value,tabling_mode+Options),yap_flag(tabling_mode,Options)).
|
||||||
|
|
||||||
@ -458,6 +463,15 @@ yap_flag(redefine_warnings,X) :-
|
|||||||
yap_flag(redefine_warnings,X) :-
|
yap_flag(redefine_warnings,X) :-
|
||||||
'$do_error'(domain_error(flag_value,redefine_warnings+X),yap_flag(redefine_warnings,X)).
|
'$do_error'(domain_error(flag_value,redefine_warnings+X),yap_flag(redefine_warnings,X)).
|
||||||
|
|
||||||
|
yap_flag(chr_toplevel_show_store,X) :-
|
||||||
|
var(X), !,
|
||||||
|
nb_getval('$chr_toplevel_show_store',X).
|
||||||
|
yap_flag(chr_toplevel_show_store,X) :-
|
||||||
|
(X = true ; X = false), !,
|
||||||
|
nb_setval('$chr_toplevel_show_store',X).
|
||||||
|
yap_flag(chr_toplevel_show_store,X) :-
|
||||||
|
'$do_error'(domain_error(flag_value,chr_toplevel_show_store+X),yap_flag(chr_toplevel_show_store,X)).
|
||||||
|
|
||||||
yap_flag(single_var_warnings,X) :-
|
yap_flag(single_var_warnings,X) :-
|
||||||
var(X), !,
|
var(X), !,
|
||||||
('$syntax_check_mode'(on,_), '$syntax_check_single_var'(on,_) ->
|
('$syntax_check_mode'(on,_), '$syntax_check_single_var'(on,_) ->
|
||||||
@ -660,6 +674,7 @@ yap_flag(max_threads,X) :-
|
|||||||
V = bounded ;
|
V = bounded ;
|
||||||
V = char_conversion ;
|
V = char_conversion ;
|
||||||
V = character_escapes ;
|
V = character_escapes ;
|
||||||
|
V = chr_toplevel_show_store ;
|
||||||
V = debug ;
|
V = debug ;
|
||||||
V = debugger_print_options ;
|
V = debugger_print_options ;
|
||||||
V = discontiguous_warnings ;
|
V = discontiguous_warnings ;
|
||||||
|
Reference in New Issue
Block a user