PIPS
newgen.h
Go to the documentation of this file.
1 /* Warning! Do not modify this file that is automatically generated! */
2 /* Modify src/Libs/newgen/newgen-local.h instead, to add your own modifications. */
3 
4 /* header file built by cproto */
5 
6 #ifndef newgen_header_included
7 #define newgen_header_included
8 /* newgen-local.h */
9 /*
10 
11  $Id: newgen-local.h 23065 2016-03-02 09:05:50Z coelho $
12 
13  Copyright 1989-2016 MINES ParisTech
14 
15  This file is part of PIPS.
16 
17  PIPS is free software: you can redistribute it and/or modify it
18  under the terms of the GNU General Public License as published by
19  the Free Software Foundation, either version 3 of the License, or
20  any later version.
21 
22  PIPS is distributed in the hope that it will be useful, but WITHOUT ANY
23  WARRANTY; without even the implied warranty of MERCHANTABILITY or
24  FITNESS FOR A PARTICULAR PURPOSE.
25 
26  See the GNU General Public License for more details.
27 
28  You should have received a copy of the GNU General Public License
29  along with PIPS. If not, see <http://www.gnu.org/licenses/>.
30 
31 */
32 
33 /* mapping.h inclusion
34  *
35  * I do that because this file was previously included in genC.h,
36  * but the macros defined here use ri types (statement, entity...).
37  * three typedef are also included here. ri.h is a prerequisit for
38  * mapping.h.
39  *
40  * FC, Feb 21, 1994
41  */
42 
43 #define STATEMENT_ORDERING_UNDEFINED (-1)
44 
45 /* these macros are obsolete! newgen functions (->) should be used
46  * instead
47  */
48 #ifndef STATEMENT_MAPPING_INCLUDED
49 #define STATEMENT_MAPPING_INCLUDED
51 #define MAKE_STATEMENT_MAPPING() \
52  (statement_mapping) hash_table_make(hash_pointer, 0)
53 #define FREE_STATEMENT_MAPPING(map) \
54  (hash_table_free((hash_table) (map)))
55 #define SET_STATEMENT_MAPPING(map, stat, val) \
56  hash_put((hash_table) (map), (char *)(stat), (char *)(val))
57 #define GET_STATEMENT_MAPPING(map, stat) \
58  hash_get((hash_table) (map), (char *) (stat))
59 #define STATEMENT_MAPPING_COUNT(map) \
60  hash_table_entry_count((hash_table) map)
61 #define STATEMENT_MAPPING_MAP(s, v, code, h) \
62  HASH_MAP(s, v, code, h)
63 /*
64  * this warrant BA Macro Compatibility:
65  */
66 #define DEFINE_CURRENT_MAPPING(name, type) \
67  GENERIC_CURRENT_MAPPING(name, type, statement)
68 #endif
69 
70 #ifndef ENTITY_MAPPING_INCLUDED
71 #define ENTITY_MAPPING_INCLUDED
73 #define MAKE_ENTITY_MAPPING() \
74  ((entity_mapping) hash_table_make(hash_pointer, 0))
75 #define FREE_ENTITY_MAPPING(map) \
76  (hash_table_free((hash_table) (map)))
77 #define SET_ENTITY_MAPPING(map, ent, val) \
78  hash_put((hash_table) (map), (char *)(ent), (char *)(val))
79 #define GET_ENTITY_MAPPING(map, ent) \
80  hash_get((hash_table) (map), (char *)(ent))
81 #define ENTITY_MAPPING_COUNT(map) \
82  hash_table_entry_count((hash_table) map)
83 #define ENTITY_MAPPING_MAP(s, v, code, h) \
84  HASH_MAP(s, v, code, h)
85 #endif
86 
87 #ifndef CONTROL_MAPPING_INCLUDED
88 #define CONTROL_MAPPING_INCLUDED
90 #define MAKE_CONTROL_MAPPING() \
91  ((control_mapping) hash_table_make(hash_pointer, 0))
92 #define FREE_CONTROL_MAPPING(map) \
93  (hash_table_free((hash_table) (map)))
94 #define SET_CONTROL_MAPPING(map, cont, val) \
95  hash_put((hash_table) (map), (char *)(cont), (char *)(val))
96 #define GET_CONTROL_MAPPING(map, cont) \
97  hash_get((hash_table) (map), (char *)(cont))
98 #define CONTROL_MAPPING_COUNT(map) \
99  hash_table_entry_count((hash_table) map)
100 #define CONTROL_MAPPING_MAP(s, v, code, h) \
101  HASH_MAP(s, v, code, h)
102 #endif
103 /* cproto-generated files */
104 /* newgen.c */
105 extern void initialize_newgen(void);
106 /* Pvecteur.c */
107 extern void vect_gen_write(FILE */*fd*/, Pvecteur /*v*/);
108 extern Pvecteur vect_gen_read(FILE */*fd*/, int (* /*f*/)(void));
109 extern void vect_gen_free(Pvecteur /*v*/);
110 extern Pvecteur vect_gen_copy_tree(Pvecteur /*v*/);
111 extern int vect_gen_allocated_memory(Pvecteur /*v*/);
113 /* Ppolynome.c */
114 extern void monome_gen_write(FILE */*fd*/, Pmonome /*pm*/);
115 extern Pmonome monome_gen_read(FILE */*fd*/, int (* /*f*/)(void));
116 extern void monome_gen_free(Pmonome /*pm*/);
117 extern Pmonome monome_gen_copy_tree(Pmonome /*pm*/);
118 extern void polynome_gen_write(FILE */*fd*/, Ppolynome /*pp*/);
119 extern Ppolynome polynome_gen_read(FILE */*fd*/, int (* /*f*/)(void));
120 extern void polynome_gen_free(Ppolynome /*pp*/);
122 extern int monome_gen_allocated_memory(Pmonome /*m*/);
123 extern int polynome_gen_allocated_memory(Ppolynome /*p*/);
124 /* Psc.c */
125 extern void sc_gen_write(FILE */*fd*/, Psysteme /*s*/);
126 extern Psysteme sc_gen_read(FILE */*fd*/, int (* /*f*/)(void));
127 extern void sc_gen_free(Psysteme /*s*/);
128 extern Psysteme sc_gen_copy_tree(Psysteme /*s*/);
129 extern int sc_gen_allocated_memory(Psysteme /*s*/);
130 #endif /* newgen_header_included */
hash_table entity_mapping
Definition: newgen.h:72
int monome_gen_allocated_memory(Pmonome)
Definition: Ppolynome.c:161
Pvecteur vect_gen_copy_tree(Pvecteur)
Definition: Pvecteur.c:163
void vect_gen_write(FILE *, Pvecteur)
Pvecteur.c.
Definition: Pvecteur.c:108
int sc_gen_allocated_memory(Psysteme)
Definition: Psc.c:208
int polynome_gen_allocated_memory(Ppolynome)
Definition: Ppolynome.c:168
Pvecteur vect_gen_read(FILE *, int(*)(void))
int contrainte_gen_allocated_memory(Pcontrainte)
Definition: Pvecteur.c:176
void monome_gen_write(FILE *, Pmonome)
Ppolynome.c.
Definition: Ppolynome.c:40
void sc_gen_free(Psysteme)
Definition: Psc.c:198
Pmonome monome_gen_copy_tree(Pmonome)
Definition: Ppolynome.c:91
int vect_gen_allocated_memory(Pvecteur)
Definition: Pvecteur.c:168
void vect_gen_free(Pvecteur)
Definition: Pvecteur.c:158
hash_table statement_mapping
Definition: newgen.h:50
void polynome_gen_free(Ppolynome)
Definition: Ppolynome.c:148
void polynome_gen_write(FILE *, Ppolynome)
Definition: Ppolynome.c:97
Ppolynome polynome_gen_read(FILE *, int(*)(void))
Ppolynome polynome_gen_copy_tree(Ppolynome)
Definition: Ppolynome.c:154
Psysteme sc_gen_copy_tree(Psysteme)
Definition: Psc.c:203
Pmonome monome_gen_read(FILE *, int(*)(void))
void sc_gen_write(FILE *, Psysteme)
Psc.c.
Definition: Psc.c:82
void initialize_newgen(void)
cproto-generated files
Definition: newgen.c:48
Psysteme sc_gen_read(FILE *, int(*)(void))
hash_table control_mapping
Definition: newgen.h:89
void monome_gen_free(Pmonome)
Definition: Ppolynome.c:85
le type des coefficients dans les vecteurs: Value est defini dans le package arithmetique
Definition: vecteur-local.h:89