PIPS
compsec.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "genC.h"
#include "compsec.h"
+ Include dependency graph for compsec.c:

Go to the source code of this file.

Typedefs

typedef void * Pvecteur
 

Functions

bound_pair copy_bound_pair (bound_pair p)
 BOUND_PAIR. More...
 
void free_bound_pair (bound_pair p)
 
bound_pair check_bound_pair (bound_pair p)
 
bool bound_pair_consistent_p (bound_pair p)
 
bool bound_pair_defined_p (bound_pair p)
 
list gen_bound_pair_cons (bound_pair p, list l)
 
void bound_pair_assign_contents (bound_pair r, bound_pair v)
 
void bound_pair_non_recursive_free (bound_pair p)
 
void write_bound_pair (FILE *f, bound_pair p)
 
bound_pair read_bound_pair (FILE *f)
 
bound_pair make_bound_pair (intptr_t a1, Pvecteur a2, Pvecteur a3)
 
comp_desc copy_comp_desc (comp_desc p)
 COMP_DESC. More...
 
void free_comp_desc (comp_desc p)
 
comp_desc check_comp_desc (comp_desc p)
 
bool comp_desc_consistent_p (comp_desc p)
 
bool comp_desc_defined_p (comp_desc p)
 
list gen_comp_desc_cons (comp_desc p, list l)
 
void comp_desc_assign_contents (comp_desc r, comp_desc v)
 
void comp_desc_non_recursive_free (comp_desc p)
 
void write_comp_desc (FILE *f, comp_desc p)
 
comp_desc read_comp_desc (FILE *f)
 
comp_desc make_comp_desc (reference a1, action a2, comp_sec a3)
 
comp_desc_set copy_comp_desc_set (comp_desc_set p)
 COMP_DESC_SET. More...
 
void free_comp_desc_set (comp_desc_set p)
 
comp_desc_set check_comp_desc_set (comp_desc_set p)
 
bool comp_desc_set_consistent_p (comp_desc_set p)
 
bool comp_desc_set_defined_p (comp_desc_set p)
 
list gen_comp_desc_set_cons (comp_desc_set p, list l)
 
void comp_desc_set_assign_contents (comp_desc_set r, comp_desc_set v)
 
void comp_desc_set_non_recursive_free (comp_desc_set p)
 
void write_comp_desc_set (FILE *f, comp_desc_set p)
 
comp_desc_set read_comp_desc_set (FILE *f)
 
comp_desc_set make_comp_desc_set (list a)
 
comp_sec copy_comp_sec (comp_sec p)
 COMP_SEC. More...
 
void free_comp_sec (comp_sec p)
 
comp_sec check_comp_sec (comp_sec p)
 
bool comp_sec_consistent_p (comp_sec p)
 
bool comp_sec_defined_p (comp_sec p)
 
list gen_comp_sec_cons (comp_sec p, list l)
 
void comp_sec_assign_contents (comp_sec r, comp_sec v)
 
void comp_sec_non_recursive_free (comp_sec p)
 
void write_comp_sec (FILE *f, comp_sec p)
 
comp_sec read_comp_sec (FILE *f)
 
comp_sec make_comp_sec (simple_section a1, list a2)
 
context_info copy_context_info (context_info p)
 CONTEXT_INFO. More...
 
void free_context_info (context_info p)
 
context_info check_context_info (context_info p)
 
bool context_info_consistent_p (context_info p)
 
bool context_info_defined_p (context_info p)
 
list gen_context_info_cons (context_info p, list l)
 
void context_info_assign_contents (context_info r, context_info v)
 
void context_info_non_recursive_free (context_info p)
 
void write_context_info (FILE *f, context_info p)
 
context_info read_context_info (FILE *f)
 
context_info make_context_info (intptr_t a1, intptr_t a2, intptr_t a3)
 
dad_struct copy_dad_struct (dad_struct p)
 DAD_STRUCT. More...
 
void free_dad_struct (dad_struct p)
 
dad_struct check_dad_struct (dad_struct p)
 
bool dad_struct_consistent_p (dad_struct p)
 
bool dad_struct_defined_p (dad_struct p)
 
list gen_dad_struct_cons (dad_struct p, list l)
 
void dad_struct_assign_contents (dad_struct r, dad_struct v)
 
void dad_struct_non_recursive_free (dad_struct p)
 
void write_dad_struct (FILE *f, dad_struct p)
 
dad_struct read_dad_struct (FILE *f)
 
dad_struct make_dad_struct (list a1, list a2)
 
ref_temp copy_ref_temp (ref_temp p)
 REF_TEMP. More...
 
void free_ref_temp (ref_temp p)
 
ref_temp check_ref_temp (ref_temp p)
 
bool ref_temp_consistent_p (ref_temp p)
 
bool ref_temp_defined_p (ref_temp p)
 
list gen_ref_temp_cons (ref_temp p, list l)
 
void ref_temp_assign_contents (ref_temp r, ref_temp v)
 
void ref_temp_non_recursive_free (ref_temp p)
 
void write_ref_temp (FILE *f, ref_temp p)
 
ref_temp read_ref_temp (FILE *f)
 
ref_temp make_ref_temp (intptr_t a1, rtype a2)
 
rtype copy_rtype (rtype p)
 RTYPE. More...
 
void free_rtype (rtype p)
 
rtype check_rtype (rtype p)
 
bool rtype_consistent_p (rtype p)
 
bool rtype_defined_p (rtype p)
 
list gen_rtype_cons (rtype p, list l)
 
void rtype_assign_contents (rtype r, rtype v)
 
void rtype_non_recursive_free (rtype p)
 
void write_rtype (FILE *f, rtype p)
 
rtype read_rtype (FILE *f)
 
string rtype_tag_as_string (enum rtype_utype tag)
 
rtype make_rtype (enum rtype_utype tag, void *val)
 
rtype make_rtype_nonlinear (void)
 
rtype make_rtype_linvariant (void)
 
rtype make_rtype_lininvariant (void)
 
simple_section copy_simple_section (simple_section p)
 SIMPLE_SECTION. More...
 
void free_simple_section (simple_section p)
 
simple_section check_simple_section (simple_section p)
 
bool simple_section_consistent_p (simple_section p)
 
bool simple_section_defined_p (simple_section p)
 
list gen_simple_section_cons (simple_section p, list l)
 
void simple_section_assign_contents (simple_section r, simple_section v)
 
void simple_section_non_recursive_free (simple_section p)
 
void write_simple_section (FILE *f, simple_section p)
 
simple_section read_simple_section (FILE *f)
 
simple_section make_simple_section (context_info a1, dad_struct a2)
 

Typedef Documentation

◆ Pvecteur

typedef void* Pvecteur

Definition at line 7 of file compsec.c.

Function Documentation

◆ bound_pair_assign_contents()

void bound_pair_assign_contents ( bound_pair  r,
bound_pair  v 
)

Definition at line 37 of file compsec.c.

37  {
40  message_assert("defined references to domain bound_pair",
42  memcpy(r, v, sizeof(struct _newgen_struct_bound_pair_));
43 }
bound_pair check_bound_pair(bound_pair p)
Definition: compsec.c:24
bool bound_pair_defined_p(bound_pair p)
Definition: compsec.c:31
#define message_assert(msg, ex)
Definition: newgen_assert.h:47

References bound_pair_defined_p(), check_bound_pair(), and message_assert.

+ Here is the call graph for this function:

◆ bound_pair_consistent_p()

bool bound_pair_consistent_p ( bound_pair  p)

Definition at line 27 of file compsec.c.

27  {
29  return gen_consistent_p((gen_chunk*) p);
30 }
int gen_consistent_p(gen_chunk *obj)
GEN_CONSISTENT_P dynamically checks the type correctness of OBJ.
Definition: genClib.c:2398
A gen_chunk is used to store every object.
Definition: genC.h:58

References check_bound_pair(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ bound_pair_defined_p()

bool bound_pair_defined_p ( bound_pair  p)

Definition at line 31 of file compsec.c.

31  {
32  return gen_defined_p((gen_chunk*) p);
33 }
int gen_defined_p(gen_chunk *obj)
Definition: genClib.c:2438

References gen_defined_p().

Referenced by bound_pair_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bound_pair_non_recursive_free()

void bound_pair_non_recursive_free ( bound_pair  p)

Definition at line 44 of file compsec.c.

44  {
45  // should clear up contents...
46  free(p);
47 }
void free(void *)

References free().

+ Here is the call graph for this function:

◆ check_bound_pair()

bound_pair check_bound_pair ( bound_pair  p)

Definition at line 24 of file compsec.c.

24  {
26 }
#define bound_pair_domain
newgen_Pvecteur_domain_defined
Definition: compsec.h:32
gen_chunk * gen_check(gen_chunk *obj, int t)
GEN_CHECK checks that the gen_chunk received OBJ is of the appropriate TYPE.
Definition: genClib.c:2356

References bound_pair_domain, and gen_check().

Referenced by bound_pair_assign_contents(), and bound_pair_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_comp_desc()

comp_desc check_comp_desc ( comp_desc  p)

Definition at line 66 of file compsec.c.

66  {
68 }
#define comp_desc_domain
newgen_bound_pair_domain_defined
Definition: compsec.h:40

References comp_desc_domain, and gen_check().

Referenced by comp_desc_assign_contents(), and comp_desc_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_comp_desc_set()

comp_desc_set check_comp_desc_set ( comp_desc_set  p)

Definition at line 108 of file compsec.c.

108  {
110 }
#define comp_desc_set_domain
newgen_comp_desc_domain_defined
Definition: compsec.h:48

References comp_desc_set_domain, and gen_check().

Referenced by comp_desc_set_assign_contents(), and comp_desc_set_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_comp_sec()

comp_sec check_comp_sec ( comp_sec  p)

Definition at line 150 of file compsec.c.

150  {
152 }
#define comp_sec_domain
newgen_comp_desc_set_domain_defined
Definition: compsec.h:56

References comp_sec_domain, and gen_check().

Referenced by comp_sec_assign_contents(), and comp_sec_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_context_info()

context_info check_context_info ( context_info  p)

Definition at line 192 of file compsec.c.

192  {
194 }
#define context_info_domain
newgen_comp_sec_domain_defined
Definition: compsec.h:64

References context_info_domain, and gen_check().

Referenced by context_info_assign_contents(), and context_info_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_dad_struct()

dad_struct check_dad_struct ( dad_struct  p)

Definition at line 234 of file compsec.c.

234  {
236 }
#define dad_struct_domain
newgen_context_info_domain_defined
Definition: compsec.h:72

References dad_struct_domain, and gen_check().

Referenced by dad_struct_assign_contents(), and dad_struct_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_ref_temp()

ref_temp check_ref_temp ( ref_temp  p)

Definition at line 276 of file compsec.c.

276  {
278 }
#define ref_temp_domain
newgen_dad_struct_domain_defined
Definition: compsec.h:80

References gen_check(), and ref_temp_domain.

Referenced by ref_temp_assign_contents(), and ref_temp_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_rtype()

rtype check_rtype ( rtype  p)

Definition at line 318 of file compsec.c.

318  {
319  return (rtype) gen_check((gen_chunk*) p, rtype_domain);
320 }
#define rtype_domain
newgen_ref_temp_domain_defined
Definition: compsec.h:88

References gen_check(), and rtype_domain.

Referenced by rtype_assign_contents(), and rtype_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_simple_section()

simple_section check_simple_section ( simple_section  p)

Definition at line 377 of file compsec.c.

377  {
379 }
#define simple_section_domain
newgen_rtype_domain_defined
Definition: compsec.h:96

References gen_check(), and simple_section_domain.

Referenced by simple_section_assign_contents(), and simple_section_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ comp_desc_assign_contents()

void comp_desc_assign_contents ( comp_desc  r,
comp_desc  v 
)

Definition at line 79 of file compsec.c.

79  {
80  check_comp_desc(r);
81  check_comp_desc(v);
82  message_assert("defined references to domain comp_desc",
84  memcpy(r, v, sizeof(struct _newgen_struct_comp_desc_));
85 }
comp_desc check_comp_desc(comp_desc p)
Definition: compsec.c:66
bool comp_desc_defined_p(comp_desc p)
Definition: compsec.c:73

References check_comp_desc(), comp_desc_defined_p(), and message_assert.

+ Here is the call graph for this function:

◆ comp_desc_consistent_p()

bool comp_desc_consistent_p ( comp_desc  p)

Definition at line 69 of file compsec.c.

69  {
70  check_comp_desc(p);
71  return gen_consistent_p((gen_chunk*) p);
72 }

References check_comp_desc(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ comp_desc_defined_p()

bool comp_desc_defined_p ( comp_desc  p)

Definition at line 73 of file compsec.c.

73  {
74  return gen_defined_p((gen_chunk*) p);
75 }

References gen_defined_p().

Referenced by comp_desc_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ comp_desc_non_recursive_free()

void comp_desc_non_recursive_free ( comp_desc  p)

Definition at line 86 of file compsec.c.

86  {
87  // should clear up contents...
88  free(p);
89 }

References free().

+ Here is the call graph for this function:

◆ comp_desc_set_assign_contents()

void comp_desc_set_assign_contents ( comp_desc_set  r,
comp_desc_set  v 
)

Definition at line 121 of file compsec.c.

121  {
124  message_assert("defined references to domain comp_desc_set",
126  memcpy(r, v, sizeof(struct _newgen_struct_comp_desc_set_));
127 }
bool comp_desc_set_defined_p(comp_desc_set p)
Definition: compsec.c:115
comp_desc_set check_comp_desc_set(comp_desc_set p)
Definition: compsec.c:108

References check_comp_desc_set(), comp_desc_set_defined_p(), and message_assert.

+ Here is the call graph for this function:

◆ comp_desc_set_consistent_p()

bool comp_desc_set_consistent_p ( comp_desc_set  p)

Definition at line 111 of file compsec.c.

111  {
113  return gen_consistent_p((gen_chunk*) p);
114 }

References check_comp_desc_set(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ comp_desc_set_defined_p()

bool comp_desc_set_defined_p ( comp_desc_set  p)

Definition at line 115 of file compsec.c.

115  {
116  return gen_defined_p((gen_chunk*) p);
117 }

References gen_defined_p().

Referenced by comp_desc_set_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ comp_desc_set_non_recursive_free()

void comp_desc_set_non_recursive_free ( comp_desc_set  p)

Definition at line 128 of file compsec.c.

128  {
129  // should clear up contents...
130  free(p);
131 }

References free().

+ Here is the call graph for this function:

◆ comp_sec_assign_contents()

void comp_sec_assign_contents ( comp_sec  r,
comp_sec  v 
)

Definition at line 163 of file compsec.c.

163  {
164  check_comp_sec(r);
165  check_comp_sec(v);
166  message_assert("defined references to domain comp_sec",
168  memcpy(r, v, sizeof(struct _newgen_struct_comp_sec_));
169 }
bool comp_sec_defined_p(comp_sec p)
Definition: compsec.c:157
comp_sec check_comp_sec(comp_sec p)
Definition: compsec.c:150

References check_comp_sec(), comp_sec_defined_p(), and message_assert.

+ Here is the call graph for this function:

◆ comp_sec_consistent_p()

bool comp_sec_consistent_p ( comp_sec  p)

Definition at line 153 of file compsec.c.

153  {
154  check_comp_sec(p);
155  return gen_consistent_p((gen_chunk*) p);
156 }

References check_comp_sec(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ comp_sec_defined_p()

bool comp_sec_defined_p ( comp_sec  p)

Definition at line 157 of file compsec.c.

157  {
158  return gen_defined_p((gen_chunk*) p);
159 }

References gen_defined_p().

Referenced by comp_sec_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ comp_sec_non_recursive_free()

void comp_sec_non_recursive_free ( comp_sec  p)

Definition at line 170 of file compsec.c.

170  {
171  // should clear up contents...
172  free(p);
173 }

References free().

+ Here is the call graph for this function:

◆ context_info_assign_contents()

void context_info_assign_contents ( context_info  r,
context_info  v 
)

Definition at line 205 of file compsec.c.

205  {
208  message_assert("defined references to domain context_info",
210  memcpy(r, v, sizeof(struct _newgen_struct_context_info_));
211 }
bool context_info_defined_p(context_info p)
Definition: compsec.c:199
context_info check_context_info(context_info p)
Definition: compsec.c:192

References check_context_info(), context_info_defined_p(), and message_assert.

+ Here is the call graph for this function:

◆ context_info_consistent_p()

bool context_info_consistent_p ( context_info  p)

Definition at line 195 of file compsec.c.

195  {
197  return gen_consistent_p((gen_chunk*) p);
198 }

References check_context_info(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ context_info_defined_p()

bool context_info_defined_p ( context_info  p)

Definition at line 199 of file compsec.c.

199  {
200  return gen_defined_p((gen_chunk*) p);
201 }

References gen_defined_p().

Referenced by context_info_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ context_info_non_recursive_free()

void context_info_non_recursive_free ( context_info  p)

Definition at line 212 of file compsec.c.

212  {
213  // should clear up contents...
214  free(p);
215 }

References free().

+ Here is the call graph for this function:

◆ copy_bound_pair()

bound_pair copy_bound_pair ( bound_pair  p)

BOUND_PAIR.

Definition at line 18 of file compsec.c.

18  {
19  return (bound_pair) gen_copy_tree((gen_chunk*) p);
20 }
gen_chunk * gen_copy_tree(gen_chunk *obj)
Definition: genClib.c:1429

References gen_copy_tree().

+ Here is the call graph for this function:

◆ copy_comp_desc()

comp_desc copy_comp_desc ( comp_desc  p)

COMP_DESC.

Definition at line 60 of file compsec.c.

60  {
61  return (comp_desc) gen_copy_tree((gen_chunk*) p);
62 }

References gen_copy_tree().

Referenced by comp_region_dup().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ copy_comp_desc_set()

comp_desc_set copy_comp_desc_set ( comp_desc_set  p)

COMP_DESC_SET.

Definition at line 102 of file compsec.c.

102  {
103  return (comp_desc_set) gen_copy_tree((gen_chunk*) p);
104 }

References gen_copy_tree().

+ Here is the call graph for this function:

◆ copy_comp_sec()

comp_sec copy_comp_sec ( comp_sec  p)

COMP_SEC.

Definition at line 144 of file compsec.c.

144  {
145  return (comp_sec) gen_copy_tree((gen_chunk*) p);
146 }

References gen_copy_tree().

+ Here is the call graph for this function:

◆ copy_context_info()

context_info copy_context_info ( context_info  p)

CONTEXT_INFO.

Definition at line 186 of file compsec.c.

186  {
187  return (context_info) gen_copy_tree((gen_chunk*) p);
188 }

References gen_copy_tree().

+ Here is the call graph for this function:

◆ copy_dad_struct()

dad_struct copy_dad_struct ( dad_struct  p)

DAD_STRUCT.

Definition at line 228 of file compsec.c.

228  {
229  return (dad_struct) gen_copy_tree((gen_chunk*) p);
230 }

References gen_copy_tree().

+ Here is the call graph for this function:

◆ copy_ref_temp()

ref_temp copy_ref_temp ( ref_temp  p)

REF_TEMP.

Definition at line 270 of file compsec.c.

270  {
271  return (ref_temp) gen_copy_tree((gen_chunk*) p);
272 }

References gen_copy_tree().

+ Here is the call graph for this function:

◆ copy_rtype()

rtype copy_rtype ( rtype  p)

RTYPE.

Definition at line 312 of file compsec.c.

312  {
313  return (rtype) gen_copy_tree((gen_chunk*) p);
314 }

References gen_copy_tree().

+ Here is the call graph for this function:

◆ copy_simple_section()

simple_section copy_simple_section ( simple_section  p)

SIMPLE_SECTION.

Definition at line 371 of file compsec.c.

371  {
372  return (simple_section) gen_copy_tree((gen_chunk*) p);
373 }

References gen_copy_tree().

+ Here is the call graph for this function:

◆ dad_struct_assign_contents()

void dad_struct_assign_contents ( dad_struct  r,
dad_struct  v 
)

Definition at line 247 of file compsec.c.

247  {
248  check_dad_struct(r);
249  check_dad_struct(v);
250  message_assert("defined references to domain dad_struct",
252  memcpy(r, v, sizeof(struct _newgen_struct_dad_struct_));
253 }
bool dad_struct_defined_p(dad_struct p)
Definition: compsec.c:241
dad_struct check_dad_struct(dad_struct p)
Definition: compsec.c:234

References check_dad_struct(), dad_struct_defined_p(), and message_assert.

+ Here is the call graph for this function:

◆ dad_struct_consistent_p()

bool dad_struct_consistent_p ( dad_struct  p)

Definition at line 237 of file compsec.c.

237  {
238  check_dad_struct(p);
239  return gen_consistent_p((gen_chunk*) p);
240 }

References check_dad_struct(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ dad_struct_defined_p()

bool dad_struct_defined_p ( dad_struct  p)

Definition at line 241 of file compsec.c.

241  {
242  return gen_defined_p((gen_chunk*) p);
243 }

References gen_defined_p().

Referenced by dad_struct_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dad_struct_non_recursive_free()

void dad_struct_non_recursive_free ( dad_struct  p)

Definition at line 254 of file compsec.c.

254  {
255  // should clear up contents...
256  free(p);
257 }

References free().

+ Here is the call graph for this function:

◆ free_bound_pair()

void free_bound_pair ( bound_pair  p)

Definition at line 21 of file compsec.c.

21  {
22  gen_free((gen_chunk*) p);
23 }
void gen_free(gen_chunk *obj)
version without shared_pointers.
Definition: genClib.c:992

References gen_free().

+ Here is the call graph for this function:

◆ free_comp_desc()

void free_comp_desc ( comp_desc  p)

Definition at line 63 of file compsec.c.

63  {
64  gen_free((gen_chunk*) p);
65 }

References gen_free().

+ Here is the call graph for this function:

◆ free_comp_desc_set()

void free_comp_desc_set ( comp_desc_set  p)

Definition at line 105 of file compsec.c.

105  {
106  gen_free((gen_chunk*) p);
107 }

References gen_free().

+ Here is the call graph for this function:

◆ free_comp_sec()

void free_comp_sec ( comp_sec  p)

Definition at line 147 of file compsec.c.

147  {
148  gen_free((gen_chunk*) p);
149 }

References gen_free().

+ Here is the call graph for this function:

◆ free_context_info()

void free_context_info ( context_info  p)

Definition at line 189 of file compsec.c.

189  {
190  gen_free((gen_chunk*) p);
191 }

References gen_free().

+ Here is the call graph for this function:

◆ free_dad_struct()

void free_dad_struct ( dad_struct  p)

Definition at line 231 of file compsec.c.

231  {
232  gen_free((gen_chunk*) p);
233 }

References gen_free().

+ Here is the call graph for this function:

◆ free_ref_temp()

void free_ref_temp ( ref_temp  p)

Definition at line 273 of file compsec.c.

273  {
274  gen_free((gen_chunk*) p);
275 }

References gen_free().

+ Here is the call graph for this function:

◆ free_rtype()

void free_rtype ( rtype  p)

Definition at line 315 of file compsec.c.

315  {
316  gen_free((gen_chunk*) p);
317 }

References gen_free().

+ Here is the call graph for this function:

◆ free_simple_section()

void free_simple_section ( simple_section  p)

Definition at line 374 of file compsec.c.

374  {
375  gen_free((gen_chunk*) p);
376 }

References gen_free().

+ Here is the call graph for this function:

◆ gen_bound_pair_cons()

list gen_bound_pair_cons ( bound_pair  p,
list  l 
)

Definition at line 34 of file compsec.c.

34  {
36 }
#define BOUND_PAIR_NEWGEN_DOMAIN
Definition: compsec.h:35
list gen_typed_cons(_int type, const void *item, const list next)
CONS a list with minimal type checking this cannot be done within the CONS macro because possible fun...
Definition: list.c:900

References BOUND_PAIR_NEWGEN_DOMAIN, and gen_typed_cons().

+ Here is the call graph for this function:

◆ gen_comp_desc_cons()

list gen_comp_desc_cons ( comp_desc  p,
list  l 
)

Definition at line 76 of file compsec.c.

76  {
78 }
#define COMP_DESC_NEWGEN_DOMAIN
Definition: compsec.h:43

References COMP_DESC_NEWGEN_DOMAIN, and gen_typed_cons().

+ Here is the call graph for this function:

◆ gen_comp_desc_set_cons()

list gen_comp_desc_set_cons ( comp_desc_set  p,
list  l 
)

Definition at line 118 of file compsec.c.

118  {
120 }
#define COMP_DESC_SET_NEWGEN_DOMAIN
Definition: compsec.h:51

References COMP_DESC_SET_NEWGEN_DOMAIN, and gen_typed_cons().

+ Here is the call graph for this function:

◆ gen_comp_sec_cons()

list gen_comp_sec_cons ( comp_sec  p,
list  l 
)

Definition at line 160 of file compsec.c.

160  {
162 }
#define COMP_SEC_NEWGEN_DOMAIN
Definition: compsec.h:59

References COMP_SEC_NEWGEN_DOMAIN, and gen_typed_cons().

+ Here is the call graph for this function:

◆ gen_context_info_cons()

list gen_context_info_cons ( context_info  p,
list  l 
)

Definition at line 202 of file compsec.c.

202  {
204 }
#define CONTEXT_INFO_NEWGEN_DOMAIN
Definition: compsec.h:67

References CONTEXT_INFO_NEWGEN_DOMAIN, and gen_typed_cons().

+ Here is the call graph for this function:

◆ gen_dad_struct_cons()

list gen_dad_struct_cons ( dad_struct  p,
list  l 
)

Definition at line 244 of file compsec.c.

244  {
246 }
#define DAD_STRUCT_NEWGEN_DOMAIN
Definition: compsec.h:75

References DAD_STRUCT_NEWGEN_DOMAIN, and gen_typed_cons().

+ Here is the call graph for this function:

◆ gen_ref_temp_cons()

list gen_ref_temp_cons ( ref_temp  p,
list  l 
)

Definition at line 286 of file compsec.c.

286  {
288 }
#define REF_TEMP_NEWGEN_DOMAIN
Definition: compsec.h:83

References gen_typed_cons(), and REF_TEMP_NEWGEN_DOMAIN.

+ Here is the call graph for this function:

◆ gen_rtype_cons()

list gen_rtype_cons ( rtype  p,
list  l 
)

Definition at line 328 of file compsec.c.

328  {
329  return gen_typed_cons(RTYPE_NEWGEN_DOMAIN, p, l);
330 }
#define RTYPE_NEWGEN_DOMAIN
Definition: compsec.h:91

References gen_typed_cons(), and RTYPE_NEWGEN_DOMAIN.

+ Here is the call graph for this function:

◆ gen_simple_section_cons()

list gen_simple_section_cons ( simple_section  p,
list  l 
)

Definition at line 387 of file compsec.c.

387  {
389 }
#define SIMPLE_SECTION_NEWGEN_DOMAIN
Definition: compsec.h:99

References gen_typed_cons(), and SIMPLE_SECTION_NEWGEN_DOMAIN.

+ Here is the call graph for this function:

◆ make_bound_pair()

bound_pair make_bound_pair ( intptr_t  a1,
Pvecteur  a2,
Pvecteur  a3 
)

Definition at line 54 of file compsec.c.

54  {
55  return (bound_pair) gen_alloc(4*sizeof(gen_chunk), GEN_CHECK_ALLOC, bound_pair_domain, a1, a2, a3);
56 }
#define GEN_CHECK_ALLOC
Definition: genC.h:307
gen_chunk * gen_alloc(int size, int gen_check_p, int dom,...)
allocates something in newgen.
Definition: genClib.c:298

References bound_pair_domain, gen_alloc(), and GEN_CHECK_ALLOC.

Referenced by AllocateDadStruct().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_comp_desc()

comp_desc make_comp_desc ( reference  a1,
action  a2,
comp_sec  a3 
)

Definition at line 96 of file compsec.c.

96  {
97  return (comp_desc) gen_alloc(4*sizeof(gen_chunk), GEN_CHECK_ALLOC, comp_desc_domain, a1, a2, a3);
98 }

References comp_desc_domain, gen_alloc(), and GEN_CHECK_ALLOC.

Referenced by InitCompDesc().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_comp_desc_set()

comp_desc_set make_comp_desc_set ( list  a)

Definition at line 138 of file compsec.c.

138  {
140 }

References comp_desc_set_domain, gen_alloc(), and GEN_CHECK_ALLOC.

Referenced by list_to_comp_secs(), and summary_complementary_sections().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_comp_sec()

comp_sec make_comp_sec ( simple_section  a1,
list  a2 
)

Definition at line 180 of file compsec.c.

180  {
181  return (comp_sec) gen_alloc(3*sizeof(gen_chunk), GEN_CHECK_ALLOC, comp_sec_domain, a1, a2);
182 }

References comp_sec_domain, gen_alloc(), and GEN_CHECK_ALLOC.

Referenced by InitCompDesc().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_context_info()

context_info make_context_info ( intptr_t  a1,
intptr_t  a2,
intptr_t  a3 
)

Definition at line 222 of file compsec.c.

222  {
223  return (context_info) gen_alloc(4*sizeof(gen_chunk), GEN_CHECK_ALLOC, context_info_domain, a1, a2, a3);
224 }

References context_info_domain, gen_alloc(), and GEN_CHECK_ALLOC.

Referenced by AllocateSimpleSection().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_dad_struct()

dad_struct make_dad_struct ( list  a1,
list  a2 
)

Definition at line 264 of file compsec.c.

264  {
265  return (dad_struct) gen_alloc(3*sizeof(gen_chunk), GEN_CHECK_ALLOC, dad_struct_domain, a1, a2);
266 }

References dad_struct_domain, gen_alloc(), and GEN_CHECK_ALLOC.

Referenced by AllocateDadStruct(), and SimpUnion().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_ref_temp()

ref_temp make_ref_temp ( intptr_t  a1,
rtype  a2 
)

Definition at line 306 of file compsec.c.

306  {
307  return (ref_temp) gen_alloc(3*sizeof(gen_chunk), GEN_CHECK_ALLOC, ref_temp_domain, a1, a2);
308 }

References gen_alloc(), GEN_CHECK_ALLOC, and ref_temp_domain.

Referenced by AllocateDadStruct().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_rtype()

rtype make_rtype ( enum rtype_utype  tag,
void *  val 
)

Definition at line 356 of file compsec.c.

356  {
357  return (rtype) gen_alloc(3*sizeof(gen_chunk), GEN_CHECK_ALLOC, rtype_domain, tag, val);
358 }
int tag
TAG.
Definition: newgen_types.h:92

References gen_alloc(), GEN_CHECK_ALLOC, and rtype_domain.

Referenced by AllocateDadStruct(), make_rtype_lininvariant(), make_rtype_linvariant(), and make_rtype_nonlinear().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_rtype_lininvariant()

rtype make_rtype_lininvariant ( void  )

Definition at line 365 of file compsec.c.

365  {
367 }
rtype make_rtype(enum rtype_utype tag, void *val)
Definition: compsec.c:356
@ is_rtype_lininvariant
Definition: compsec.h:387
#define UU
Definition: newgen_types.h:98

References is_rtype_lininvariant, make_rtype(), and UU.

+ Here is the call graph for this function:

◆ make_rtype_linvariant()

rtype make_rtype_linvariant ( void  )

Definition at line 362 of file compsec.c.

362  {
364 }
@ is_rtype_linvariant
Definition: compsec.h:386

References is_rtype_linvariant, make_rtype(), and UU.

+ Here is the call graph for this function:

◆ make_rtype_nonlinear()

rtype make_rtype_nonlinear ( void  )

Definition at line 359 of file compsec.c.

359  {
361 }
@ is_rtype_nonlinear
Definition: compsec.h:385

References is_rtype_nonlinear, make_rtype(), and UU.

+ Here is the call graph for this function:

◆ make_simple_section()

simple_section make_simple_section ( context_info  a1,
dad_struct  a2 
)

Definition at line 407 of file compsec.c.

407  {
409 }

References gen_alloc(), GEN_CHECK_ALLOC, and simple_section_domain.

Referenced by AllocateSimpleSection(), and SimpUnion().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ read_bound_pair()

bound_pair read_bound_pair ( FILE *  f)

Definition at line 51 of file compsec.c.

51  {
52  return (bound_pair) gen_read(f);
53 }
gen_chunk * gen_read(FILE *file)
GEN_READ reads any object from the FILE stream.
Definition: genClib.c:2323
int f(int off1, int off2, int n, float r[n], float a[n], float b[n])
Definition: offsets.c:15

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_comp_desc()

comp_desc read_comp_desc ( FILE *  f)

Definition at line 93 of file compsec.c.

93  {
94  return (comp_desc) gen_read(f);
95 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_comp_desc_set()

comp_desc_set read_comp_desc_set ( FILE *  f)

Definition at line 135 of file compsec.c.

135  {
136  return (comp_desc_set) gen_read(f);
137 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_comp_sec()

comp_sec read_comp_sec ( FILE *  f)

Definition at line 177 of file compsec.c.

177  {
178  return (comp_sec) gen_read(f);
179 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_context_info()

context_info read_context_info ( FILE *  f)

Definition at line 219 of file compsec.c.

219  {
220  return (context_info) gen_read(f);
221 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_dad_struct()

dad_struct read_dad_struct ( FILE *  f)

Definition at line 261 of file compsec.c.

261  {
262  return (dad_struct) gen_read(f);
263 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_ref_temp()

ref_temp read_ref_temp ( FILE *  f)

Definition at line 303 of file compsec.c.

303  {
304  return (ref_temp) gen_read(f);
305 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_rtype()

rtype read_rtype ( FILE *  f)

Definition at line 345 of file compsec.c.

345  {
346  return (rtype) gen_read(f);
347 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_simple_section()

simple_section read_simple_section ( FILE *  f)

Definition at line 404 of file compsec.c.

404  {
405  return (simple_section) gen_read(f);
406 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ ref_temp_assign_contents()

void ref_temp_assign_contents ( ref_temp  r,
ref_temp  v 
)

Definition at line 289 of file compsec.c.

289  {
290  check_ref_temp(r);
291  check_ref_temp(v);
292  message_assert("defined references to domain ref_temp",
294  memcpy(r, v, sizeof(struct _newgen_struct_ref_temp_));
295 }
bool ref_temp_defined_p(ref_temp p)
Definition: compsec.c:283
ref_temp check_ref_temp(ref_temp p)
Definition: compsec.c:276

References check_ref_temp(), message_assert, and ref_temp_defined_p().

+ Here is the call graph for this function:

◆ ref_temp_consistent_p()

bool ref_temp_consistent_p ( ref_temp  p)

Definition at line 279 of file compsec.c.

279  {
280  check_ref_temp(p);
281  return gen_consistent_p((gen_chunk*) p);
282 }

References check_ref_temp(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ ref_temp_defined_p()

bool ref_temp_defined_p ( ref_temp  p)

Definition at line 283 of file compsec.c.

283  {
284  return gen_defined_p((gen_chunk*) p);
285 }

References gen_defined_p().

Referenced by ref_temp_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ref_temp_non_recursive_free()

void ref_temp_non_recursive_free ( ref_temp  p)

Definition at line 296 of file compsec.c.

296  {
297  // should clear up contents...
298  free(p);
299 }

References free().

+ Here is the call graph for this function:

◆ rtype_assign_contents()

void rtype_assign_contents ( rtype  r,
rtype  v 
)

Definition at line 331 of file compsec.c.

331  {
332  check_rtype(r);
333  check_rtype(v);
334  message_assert("defined references to domain rtype",
336  memcpy(r, v, sizeof(struct _newgen_struct_rtype_));
337 }
rtype check_rtype(rtype p)
Definition: compsec.c:318
bool rtype_defined_p(rtype p)
Definition: compsec.c:325

References check_rtype(), message_assert, and rtype_defined_p().

+ Here is the call graph for this function:

◆ rtype_consistent_p()

bool rtype_consistent_p ( rtype  p)

Definition at line 321 of file compsec.c.

321  {
322  check_rtype(p);
323  return gen_consistent_p((gen_chunk*) p);
324 }

References check_rtype(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ rtype_defined_p()

bool rtype_defined_p ( rtype  p)

Definition at line 325 of file compsec.c.

325  {
326  return gen_defined_p((gen_chunk*) p);
327 }

References gen_defined_p().

Referenced by rtype_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ rtype_non_recursive_free()

void rtype_non_recursive_free ( rtype  p)

Definition at line 338 of file compsec.c.

338  {
339  // should clear up contents...
340  free(p);
341 }

References free().

+ Here is the call graph for this function:

◆ rtype_tag_as_string()

string rtype_tag_as_string ( enum rtype_utype  tag)

Definition at line 348 of file compsec.c.

348  {
349  switch (tag) {
350  case is_rtype_nonlinear: return "nonlinear";
351  case is_rtype_linvariant: return "linvariant";
352  case is_rtype_lininvariant: return "lininvariant";
353  default: return string_undefined;
354  }
355 }
#define string_undefined
Definition: newgen_types.h:40

References is_rtype_lininvariant, is_rtype_linvariant, is_rtype_nonlinear, and string_undefined.

◆ simple_section_assign_contents()

void simple_section_assign_contents ( simple_section  r,
simple_section  v 
)

Definition at line 390 of file compsec.c.

390  {
393  message_assert("defined references to domain simple_section",
395  memcpy(r, v, sizeof(struct _newgen_struct_simple_section_));
396 }
bool simple_section_defined_p(simple_section p)
Definition: compsec.c:384
simple_section check_simple_section(simple_section p)
Definition: compsec.c:377

References check_simple_section(), message_assert, and simple_section_defined_p().

+ Here is the call graph for this function:

◆ simple_section_consistent_p()

bool simple_section_consistent_p ( simple_section  p)

Definition at line 380 of file compsec.c.

380  {
382  return gen_consistent_p((gen_chunk*) p);
383 }

References check_simple_section(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ simple_section_defined_p()

bool simple_section_defined_p ( simple_section  p)

Definition at line 384 of file compsec.c.

384  {
385  return gen_defined_p((gen_chunk*) p);
386 }

References gen_defined_p().

Referenced by simple_section_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ simple_section_non_recursive_free()

void simple_section_non_recursive_free ( simple_section  p)

Definition at line 397 of file compsec.c.

397  {
398  // should clear up contents...
399  free(p);
400 }

References free().

+ Here is the call graph for this function:

◆ write_bound_pair()

void write_bound_pair ( FILE *  f,
bound_pair  p 
)

Definition at line 48 of file compsec.c.

48  {
49  gen_write(f, (gen_chunk*) p);
50 }
void gen_write(FILE *fd, gen_chunk *obj)
GEN_WRITE writes the OBJect on the stream FD.
Definition: genClib.c:1745

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_comp_desc()

void write_comp_desc ( FILE *  f,
comp_desc  p 
)

Definition at line 90 of file compsec.c.

90  {
91  gen_write(f, (gen_chunk*) p);
92 }

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_comp_desc_set()

void write_comp_desc_set ( FILE *  f,
comp_desc_set  p 
)

Definition at line 132 of file compsec.c.

132  {
133  gen_write(f, (gen_chunk*) p);
134 }

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_comp_sec()

void write_comp_sec ( FILE *  f,
comp_sec  p 
)

Definition at line 174 of file compsec.c.

174  {
175  gen_write(f, (gen_chunk*) p);
176 }

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_context_info()

void write_context_info ( FILE *  f,
context_info  p 
)

Definition at line 216 of file compsec.c.

216  {
217  gen_write(f, (gen_chunk*) p);
218 }

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_dad_struct()

void write_dad_struct ( FILE *  f,
dad_struct  p 
)

Definition at line 258 of file compsec.c.

258  {
259  gen_write(f, (gen_chunk*) p);
260 }

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_ref_temp()

void write_ref_temp ( FILE *  f,
ref_temp  p 
)

Definition at line 300 of file compsec.c.

300  {
301  gen_write(f, (gen_chunk*) p);
302 }

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_rtype()

void write_rtype ( FILE *  f,
rtype  p 
)

Definition at line 342 of file compsec.c.

342  {
343  gen_write(f, (gen_chunk*) p);
344 }

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_simple_section()

void write_simple_section ( FILE *  f,
simple_section  p 
)

Definition at line 401 of file compsec.c.

401  {
402  gen_write(f, (gen_chunk*) p);
403 }

References f(), and gen_write().

+ Here is the call graph for this function: