% compiler: GNU Prolog 1.1.1 (Oct 18 1999)
% file    : internal.pl
% date    : 10 22 1999
% time    : 14:54:26


file_name('/home/lima/diaz/GNU-Prolog/src/Pl2Wam/internal.pl').


predicate(internal_format/6,58,static,private,user,[
    allocate(5),
    get_variable(y(0),1),
    get_variable(y(1),3),
    get_variable(y(2),4),
    get_variable(y(3),5),
    put_variable(y(4),1),
    call(format_head/3),
    put_value(y(0),0),
    put_value(y(4),1),
    put_value(y(1),2),
    put_value(y(2),3),
    call(format_body/4),
    put_unsafe_value(y(4),0),
    put_integer(0,1),
    put_value(y(3),2),
    deallocate,
    execute(classif_vars/3)]).


predicate(format_head/3,66,static,private,user,[
    get_variable(x(3),2),
    put_value(x(1),2),
    put_integer(0,1),
    put_void(4),
    execute(format_pred/5)]).


predicate(format_body/4,72,static,private,user,[
    get_variable(x(5),2),
    put_value(x(1),2),
    put_value(x(3),6),
    put_integer(0,1),
    put_atom(t,3),
    put_nil(4),
    put_void(7),
    execute(format_body1/8)]).


predicate(format_body1/8,75,static,private,user,[
    load_cut_level(8),
    try_me_else(5),
    switch_on_term(1,4,fail,fail,2),

label(1),
    try_me_else(3),

label(2),
    allocate(8),
    get_variable(y(1),2),
    get_variable(y(2),4),
    get_variable(y(3),6),
    get_variable(y(4),7),
    get_structure((',')/2,0),
    unify_variable(x(0)),
    unify_variable(y(0)),
    cut(x(8)),
    put_value(y(1),2),
    put_variable(y(5),4),
    put_variable(y(6),6),
    put_variable(y(7),7),
    call(format_body1/8),
    put_value(y(0),0),
    put_unsafe_value(y(6),1),
    put_value(y(1),2),
    put_unsafe_value(y(7),3),
    put_value(y(2),4),
    put_unsafe_value(y(5),5),
    put_value(y(3),6),
    put_value(y(4),7),
    deallocate,
    execute(format_body1/8),

label(3),
    trust_me_else_fail,

label(4),
    get_atom(true,0),
    get_value(x(5),4),
    get_value(x(7),3),
    get_value(x(6),1),
    cut(x(8)),
    proceed,

label(5),
    trust_me_else_fail,
    allocate(6),
    get_variable(y(0),0),
    get_variable(y(1),2),
    get_variable(y(3),6),
    get_variable(y(4),7),
    get_list(5),
    unify_variable(y(2)),
    unify_local_value(x(4)),
    put_value(x(3),0),
    put_value(x(1),2),
    put_value(y(3),1),
    call('$format_body1/8_$aux1'/3),
    put_value(y(0),0),
    put_value(y(3),1),
    put_value(y(1),2),
    put_value(y(2),3),
    put_variable(y(5),4),
    call(format_pred/5),
    put_unsafe_value(y(5),0),
    put_value(y(4),1),
    deallocate,
    execute('$format_body1/8_$aux2'/2)]).


predicate('$format_body1/8_$aux2'/2,83,static,private,user,[
    load_cut_level(2),
    try_me_else(2),
    switch_on_term(1,1,fail,fail,fail),

label(1),
    get_atom(t,0),
    cut(x(2)),
    get_atom(f,1),
    proceed,

label(2),
    trust_me_else_fail,
    get_atom(t,1),
    proceed]).


predicate('$format_body1/8_$aux1'/3,83,static,private,user,[
    load_cut_level(3),
    try_me_else(2),
    switch_on_term(1,1,fail,fail,fail),

label(1),
    get_atom(t,0),
    cut(x(3)),
    math_fast_load_value(x(2),0),
    function('Fct_Fast_Inc',0,[0]),
    get_value(x(1),0),
    proceed,

label(2),
    trust_me_else_fail,
    get_value(x(2),1),
    proceed]).


predicate(format_pred/5,94,static,private,user,[
    allocate(3),
    get_variable(y(2),4),
    get_variable(x(4),0),
    get_structure(p/3,3),
    unify_local_value(x(1)),
    unify_variable(x(0)),
    unify_variable(x(3)),
    get_structure((/)/2,0),
    unify_variable(y(0)),
    unify_variable(y(1)),
    put_value(y(0),0),
    put_value(y(1),5),
    call_c_test('Blt_Functor',[4,0,5]),
    put_list(5),
    unify_void(1),
    unify_variable(x(0)),
    call_c_test('Blt_Univ',[4,5]),
    call(format_arg_lst/4),
    put_value(y(0),0),
    put_value(y(1),1),
    put_value(y(2),2),
    deallocate,
    execute('$format_pred/5_$aux1'/3)]).


predicate('$format_pred/5_$aux1'/3,94,static,private,user,[
    load_cut_level(3),
    try_me_else(1),
    allocate(2),
    get_variable(y(0),2),
    get_variable(y(1),3),
    call(inline_predicate/2),
    cut(y(1)),
    put_value(y(0),0),
    get_atom(t,0),
    deallocate,
    proceed,

label(1),
    trust_me_else_fail,
    get_atom(f,2),
    proceed]).


predicate(format_arg_lst/4,104,static,private,user,[
    load_cut_level(4),
    switch_on_term(1,2,fail,4,fail),

label(1),
    try_me_else(3),

label(2),
    get_nil(0),
    get_nil(3),
    proceed,

label(3),
    trust_me_else_fail,

label(4),
    allocate(5),
    get_variable(y(1),1),
    get_variable(y(2),2),
    get_list(0),
    unify_variable(x(0)),
    unify_variable(y(0)),
    get_list(3),
    unify_variable(x(3)),
    unify_variable(y(3)),
    get_variable(y(4),4),
    put_value(y(1),1),
    put_value(y(2),2),
    call(format_arg/4),
    cut(y(4)),
    put_value(y(0),0),
    put_value(y(1),1),
    put_value(y(2),2),
    put_value(y(3),3),
    deallocate,
    execute(format_arg_lst/4)]).


predicate(format_arg/4,114,static,private,user,[
    try_me_else(1),
    get_variable(x(4),2),
    get_variable(x(2),1),
    get_variable(x(1),0),
    call_c_test('Blt_Var',[1]),
    put_value(x(4),0),
    execute(add_var_to_dico/4),

label(1),
    retry_me_else(3),
    switch_on_term(2,2,fail,fail,fail),

label(2),
    get_nil(0),
    get_atom(nil,3),
    proceed,

label(3),
    retry_me_else(4),
    get_structure(atm/1,3),
    unify_local_value(x(0)),
    call_c_test('Blt_Atom',[0]),
    proceed,

label(4),
    retry_me_else(5),
    get_structure(int/1,3),
    unify_local_value(x(0)),
    call_c_test('Blt_Integer',[0]),
    proceed,

label(5),
    retry_me_else(6),
    get_structure(flt/1,3),
    unify_local_value(x(0)),
    call_c_test('Blt_Float',[0]),
    proceed,

label(6),
    trust_me_else_fail,
    get_variable(x(4),0),
    get_structure(stc/3,3),
    unify_variable(x(0)),
    unify_variable(x(5)),
    unify_variable(x(3)),
    call_c_test('Blt_Functor',[4,0,5]),
    put_list(5),
    unify_void(1),
    unify_variable(x(0)),
    call_c_test('Blt_Univ',[4,5]),
    execute(format_arg_lst/4)]).


predicate(add_var_to_dico/4,144,static,private,user,[
    load_cut_level(4),
    try_me_else(1),
    call_c_test('Blt_Var',[0]),
    cut(x(4)),
    get_structure(var/2,3),
    unify_void(2),
    get_list(0),
    unify_variable(x(0)),
    unify_void(1),
    get_structure(v/4,0),
    unify_local_value(x(1)),
    unify_local_value(x(2)),
    unify_void(1),
    unify_local_value(x(3)),
    proceed,

label(1),
    trust_me_else_fail,
    switch_on_term(3,fail,fail,2,fail),

label(2),
    try(4),
    trust(6),

label(3),
    try_me_else(5),

label(4),
    get_variable(x(6),1),
    get_list(0),
    unify_variable(x(0)),
    unify_void(1),
    get_structure(v/4,0),
    unify_variable(x(0)),
    unify_variable(x(1)),
    unify_variable(x(5)),
    unify_local_value(x(3)),
    call_c_test('Blt_Term_Eq',[0,6]),
    cut(x(4)),
    get_structure(var/2,3),
    unify_variable(x(0)),
    unify_void(1),
    get_atom(f,5),
    execute('$add_var_to_dico/4_$aux1'/3),

label(5),
    trust_me_else_fail,

label(6),
    get_list(0),
    unify_void(1),
    unify_variable(x(0)),
    execute(add_var_to_dico/4)]).


predicate('$add_var_to_dico/4_$aux1'/3,150,static,private,user,[
    load_cut_level(3),
    try_me_else(1),
    call_c_test('Blt_Var',[0]),
    call_c_test('Blt_Term_Neq',[1,2]),
    math_fast_load_value(x(2),1),
    put_integer(1,2),
    call_c_test('Blt_Fast_Gt',[1,2]),
    cut(x(3)),
    get_structure(y/1,0),
    unify_void(1),
    proceed,

label(1),
    trust_me_else_fail,
    proceed]).


predicate(classif_vars/3,165,static,private,user,[
    load_cut_level(3),
    switch_on_term(2,3,fail,1,fail),

label(1),
    try(5),
    trust(7),

label(2),
    try_me_else(4),

label(3),
    get_nil(0),
    get_value(x(2),1),
    cut(x(3)),
    proceed,

label(4),
    retry_me_else(6),

label(5),
    allocate(3),
    get_variable(y(1),1),
    get_variable(y(2),2),
    get_list(0),
    unify_variable(x(0)),
    unify_variable(y(0)),
    get_structure(v/4,0),
    unify_void(2),
    unify_variable(x(0)),
    unify_structure(var/2),
    unify_variable(x(1)),
    unify_void(1),
    call_c_test('Blt_Var',[1]),
    cut(x(3)),
    call('$classif_vars/3_$aux1'/2),
    put_value(y(0),0),
    put_value(y(1),1),
    put_value(y(2),2),
    deallocate,
    execute(classif_vars/3),

label(6),
    trust_me_else_fail,

label(7),
    get_list(0),
    unify_variable(x(3)),
    unify_variable(x(0)),
    get_structure(v/4,3),
    unify_void(3),
    unify_structure(var/2),
    unify_variable(x(3)),
    unify_void(1),
    get_structure(y/1,3),
    unify_local_value(x(1)),
    math_fast_load_value(x(1),1),
    function('Fct_Fast_Inc',1,[1]),
    execute(classif_vars/3)]).


predicate('$classif_vars/3_$aux1'/2,168,static,private,user,[
    load_cut_level(2),
    try_me_else(1),
    call_c_test('Blt_Var',[0]),
    cut(x(2)),
    get_structure(x/1,1),
    unify_atom(void),
    proceed,

label(1),
    trust_me_else_fail,
    get_structure(x/1,1),
    unify_void(1),
    proceed]).


predicate(inline_predicate/2,186,static,private,user,[
    put_atom(inline,3),
    put_variable(x(2),4),
    call_c_test('Blt_G_Read',[3,4]),
    execute(inline_predicate/3)]).


predicate(inline_predicate/3,193,static,private,user,[
    load_cut_level(3),
    try_me_else(6),
    switch_on_term(2,1,fail,fail,fail),

label(1),
    switch_on_atom([('$get_cut_level',3),('$cut',5)]),

label(2),
    try_me_else(4),

label(3),
    get_atom('$get_cut_level',0),
    get_integer(1,1),
    proceed,

label(4),
    trust_me_else_fail,

label(5),
    get_atom('$cut',0),
    get_integer(1,1),
    proceed,

label(6),
    retry_me_else(7),
    allocate(2),
    get_variable(y(0),0),
    get_integer(1,1),
    get_variable(y(1),3),
    put_value(y(0),0),
    call('$inline_predicate/3_$aux1'/1),
    cut(y(1)),
    put_structure((/)/2,0),
    unify_local_value(y(0)),
    unify_integer(1),
    deallocate,
    execute(test_call_c_allowed/1),

label(7),
    trust_me_else_fail,
    switch_on_term(9,8,fail,fail,fail),

label(8),
    switch_on_atom([((=),10),('$foreign_call_c',12),(var,14),(nonvar,16),(atom,18),(integer,20),(float,22),(number,24),(atomic,26),(compound,28),(callable,30),(list,32),(partial_list,34),(list_or_partial_list,36),(fd_var,38),(non_fd_var,40),(generic_var,42),(non_generic_var,44),(functor,46),(arg,48),(compare,50),((=..),52),((==),54),((\==),56),((@<),58),((@=<),60),((@>),62),((@>=),64),((is),66),((=:=),68),((=\=),70),((<),72),((=<),74),((>),76),((>=),78),(g_assign,80),(g_assignb,82),(g_link,84),(g_read,86),(g_array_size,88)]),

label(9),
    try_me_else(11),

label(10),
    get_atom(=,0),
    get_integer(2,1),
    proceed,

label(11),
    retry_me_else(13),

label(12),
    get_atom('$foreign_call_c',0),
    get_integer(7,1),
    proceed,

label(13),
    retry_me_else(15),

label(14),
    get_atom(var,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(15),
    retry_me_else(17),

label(16),
    get_atom(nonvar,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(17),
    retry_me_else(19),

label(18),
    get_atom(atom,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(19),
    retry_me_else(21),

label(20),
    get_atom(integer,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(21),
    retry_me_else(23),

label(22),
    get_atom(float,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(23),
    retry_me_else(25),

label(24),
    get_atom(number,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(25),
    retry_me_else(27),

label(26),
    get_atom(atomic,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(27),
    retry_me_else(29),

label(28),
    get_atom(compound,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(29),
    retry_me_else(31),

label(30),
    get_atom(callable,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(31),
    retry_me_else(33),

label(32),
    get_atom(list,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(33),
    retry_me_else(35),

label(34),
    get_atom(partial_list,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(35),
    retry_me_else(37),

label(36),
    get_atom(list_or_partial_list,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(37),
    retry_me_else(39),

label(38),
    get_atom(fd_var,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(39),
    retry_me_else(41),

label(40),
    get_atom(non_fd_var,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(41),
    retry_me_else(43),

label(42),
    get_atom(generic_var,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(43),
    retry_me_else(45),

label(44),
    get_atom(non_generic_var,0),
    get_integer(1,1),
    get_atom(t,2),
    proceed,

label(45),
    retry_me_else(47),

label(46),
    get_atom(functor,0),
    get_integer(3,1),
    get_atom(t,2),
    proceed,

label(47),
    retry_me_else(49),

label(48),
    get_atom(arg,0),
    get_integer(3,1),
    get_atom(t,2),
    proceed,

label(49),
    retry_me_else(51),

label(50),
    get_atom(compare,0),
    get_integer(3,1),
    get_atom(t,2),
    proceed,

label(51),
    retry_me_else(53),

label(52),
    get_atom(=..,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(53),
    retry_me_else(55),

label(54),
    get_atom(==,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(55),
    retry_me_else(57),

label(56),
    get_atom(\==,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(57),
    retry_me_else(59),

label(58),
    get_atom(@<,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(59),
    retry_me_else(61),

label(60),
    get_atom(@=<,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(61),
    retry_me_else(63),

label(62),
    get_atom(@>,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(63),
    retry_me_else(65),

label(64),
    get_atom(@>=,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(65),
    retry_me_else(67),

label(66),
    get_atom(is,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(67),
    retry_me_else(69),

label(68),
    get_atom(=:=,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(69),
    retry_me_else(71),

label(70),
    get_atom(=\=,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(71),
    retry_me_else(73),

label(72),
    get_atom(<,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(73),
    retry_me_else(75),

label(74),
    get_atom(=<,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(75),
    retry_me_else(77),

label(76),
    get_atom(>,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(77),
    retry_me_else(79),

label(78),
    get_atom(>=,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(79),
    retry_me_else(81),

label(80),
    get_atom(g_assign,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(81),
    retry_me_else(83),

label(82),
    get_atom(g_assignb,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(83),
    retry_me_else(85),

label(84),
    get_atom(g_link,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(85),
    retry_me_else(87),

label(86),
    get_atom(g_read,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed,

label(87),
    trust_me_else_fail,

label(88),
    get_atom(g_array_size,0),
    get_integer(2,1),
    get_atom(t,2),
    proceed]).


predicate('$inline_predicate/3_$aux1'/1,199,static,private,user,[
    switch_on_term(2,1,fail,fail,fail),

label(1),
    switch_on_atom([('$call_c',3),('$call_c_test',5),('$call_c_jump',7)]),

label(2),
    try_me_else(4),

label(3),
    get_atom('$call_c',0),
    proceed,

label(4),
    retry_me_else(6),

label(5),
    get_atom('$call_c_test',0),
    proceed,

label(6),
    trust_me_else_fail,

label(7),
    get_atom('$call_c_jump',0),
    proceed]).
