GNU PROLOG with UTF8 support
bc_supp.h
Go to the documentation of this file.
1 /*-------------------------------------------------------------------------*
2  * GNU Prolog *
3  * *
4  * Part : Prolog buit-in predicates *
5  * File : bc_supp.h *
6  * Descr.: byte-Code support - header file *
7  * Author: Daniel Diaz *
8  * *
9  * Copyright (C) 1999-2015 Daniel Diaz *
10  * *
11  * This file is part of GNU Prolog *
12  * *
13  * GNU Prolog is free software: you can redistribute it and/or *
14  * modify it under the terms of either: *
15  * *
16  * - the GNU Lesser General Public License as published by the Free *
17  * Software Foundation; either version 3 of the License, or (at your *
18  * option) any later version. *
19  * *
20  * or *
21  * *
22  * - the GNU General Public License as published by the Free *
23  * Software Foundation; either version 2 of the License, or (at your *
24  * option) any later version. *
25  * *
26  * or both in parallel, as here. *
27  * *
28  * GNU Prolog is distributed in the hope that it will be useful, *
29  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
30  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
31  * General Public License for more details. *
32  * *
33  * You should have received copies of the GNU General Public License and *
34  * the GNU Lesser General Public License along with this program. If *
35  * not, see http://www.gnu.org/licenses/. *
36  *-------------------------------------------------------------------------*/
37 
38 
39 /*---------------------------------*
40  * Constants *
41  *---------------------------------*/
42 
43 /*---------------------------------*
44  * Type Definitions *
45  *---------------------------------*/
46 
47 
48 /*---------------------------------*
49  * Global Variables *
50  *---------------------------------*/
51 
52 #ifdef BC_SUPP_FILE
53 
54 int pl_byte_len;
55 
56 #else
57 
58 extern int pl_byte_len;
59 
60 #endif
61 
62  /* defined as this to avoid to force the */
63  /* inclusion of bc_supp.o if not needed */
64  /* (dynam_supp.c uses pl_byte_code) */
65 unsigned *pl_byte_code;
66 
67 
68 
69 /*---------------------------------*
70  * Function Prototypes *
71  *---------------------------------*/
72 
73 WamCont Pl_BC_Emulate_Pred(int func, DynPInf *dyn);
74 
75 void Pl_BC_Start_Emit_0(void);
76 void Pl_BC_Stop_Emit_0(void);
77 void Pl_BC_Emit_Inst_1(WamWord inst_word);
78 void Pl_BC_Emit_Inst_Execute_Native(int func, int arity, PlLong *codep);
79 
Definition: dynam_supp.h:108
WamCont Pl_BC_Emulate_Pred(int func, DynPInf *dyn)
Definition: bc_supp.c:878
int pl_byte_len
void Pl_BC_Start_Emit_0(void)
Definition: bc_supp.c:464
void Pl_BC_Emit_Inst_Execute_Native(int func, int arity, PlLong *codep)
Definition: bc_supp.c:747
intptr_t PlLong
Definition: gprolog.h:88
void Pl_BC_Stop_Emit_0(void)
Definition: bc_supp.c:477
void Pl_BC_Emit_Inst_1(WamWord inst_word)
Definition: bc_supp.c:525
unsigned * pl_byte_code
Definition: bc_supp.h:65
long WamWord
Definition: LINUX_SIGSEGV.c:4