PIPS
points_to_private.c
Go to the documentation of this file.
1 /*
2  * THIS FILE HAS BEEN AUTOMATICALLY GENERATED BY NEWGEN.
3  *
4  * PLEASE DO NOT MODIFY IT.
5  */
6 
7 
8 #include <stdio.h>
9 #include <stdlib.h>
10 #include <string.h>
11 #include "genC.h"
12 #include "points_to_private.h"
13 
14 /* POINTS_TO_GRAPH
15  */
18 }
20  gen_free((gen_chunk*) p);
21 }
24 }
27  return gen_consistent_p((gen_chunk*) p);
28 }
30  return gen_defined_p((gen_chunk*) p);
31 }
34 }
38  message_assert("defined references to domain points_to_graph",
40  memcpy(r, v, sizeof(struct _newgen_struct_points_to_graph_));
41 }
43  // should clear up contents...
44  free(p);
45 }
47  gen_write(f, (gen_chunk*) p);
48 }
50  return (points_to_graph) gen_read(f);
51 }
54 }
55 
56 /* POINTS_TO_LIST
57  */
59  return (points_to_list) gen_copy_tree((gen_chunk*) p);
60 }
62  gen_free((gen_chunk*) p);
63 }
66 }
69  return gen_consistent_p((gen_chunk*) p);
70 }
72  return gen_defined_p((gen_chunk*) p);
73 }
76 }
80  message_assert("defined references to domain points_to_list",
82  memcpy(r, v, sizeof(struct _newgen_struct_points_to_list_));
83 }
85  // should clear up contents...
86  free(p);
87 }
89  gen_write(f, (gen_chunk*) p);
90 }
92  return (points_to_list) gen_read(f);
93 }
96 }
97 
98 /* POINTS_TO
99  */
101  return (points_to) gen_copy_tree((gen_chunk*) p);
102 }
104  gen_free((gen_chunk*) p);
105 }
108 }
110  check_points_to(p);
111  return gen_consistent_p((gen_chunk*) p);
112 }
114  return gen_defined_p((gen_chunk*) p);
115 }
118 }
120  check_points_to(r);
121  check_points_to(v);
122  message_assert("defined references to domain points_to",
124  memcpy(r, v, sizeof(struct _newgen_struct_points_to_));
125 }
127  // should clear up contents...
128  free(p);
129 }
130 void write_points_to(FILE* f, points_to p) {
131  gen_write(f, (gen_chunk*) p);
132 }
134  return (points_to) gen_read(f);
135 }
137  return (points_to) gen_alloc(5*sizeof(gen_chunk), GEN_CHECK_ALLOC, points_to_domain, a1, a2, a3, a4);
138 }
139 
140 /* STATEMENT_POINTS_TO
141  */
144 }
146  gen_free((gen_chunk*) p);
147 }
150 }
153  return gen_consistent_p((gen_chunk*) p);
154 }
156  return gen_defined_p((gen_chunk*) p);
157 }
160 }
164  message_assert("defined references to domain statement_points_to",
166  memcpy(r, v, sizeof(struct _newgen_struct_statement_points_to_));
167 }
169  // should clear up contents...
170  free(p);
171 }
173  gen_write(f, (gen_chunk*) p);
174 }
176  return (statement_points_to) gen_read(f);
177 }
180 }
183 }
186 }
189 }
192 }
195 }
196 
void free_statement_points_to(statement_points_to p)
void write_statement_points_to(FILE *f, statement_points_to p)
list gen_points_to_graph_cons(points_to_graph p, list l)
points_to_list make_points_to_list(bool a1, list a2)
void update_statement_points_to(statement_points_to f, statement k, points_to_list v)
void statement_points_to_assign_contents(statement_points_to r, statement_points_to v)
bool points_to_defined_p(points_to p)
void extend_statement_points_to(statement_points_to f, statement k, points_to_list v)
statement_points_to read_statement_points_to(FILE *f)
points_to_list read_points_to_list(FILE *f)
points_to make_points_to(cell a1, cell a2, approximation a3, descriptor a4)
bool statement_points_to_defined_p(statement_points_to p)
points_to_list delete_statement_points_to(statement_points_to f, statement k)
bool points_to_graph_defined_p(points_to_graph p)
void free_points_to(points_to p)
void free_points_to_list(points_to_list p)
bool points_to_list_consistent_p(points_to_list p)
void points_to_graph_assign_contents(points_to_graph r, points_to_graph v)
void points_to_non_recursive_free(points_to p)
bool statement_points_to_consistent_p(statement_points_to p)
bool points_to_graph_consistent_p(points_to_graph p)
statement_points_to make_statement_points_to(void)
points_to read_points_to(FILE *f)
points_to copy_points_to(points_to p)
POINTS_TO.
list gen_points_to_cons(points_to p, list l)
void write_points_to_graph(FILE *f, points_to_graph p)
bool points_to_consistent_p(points_to p)
void points_to_list_assign_contents(points_to_list r, points_to_list v)
void free_points_to_graph(points_to_graph p)
points_to_graph copy_points_to_graph(points_to_graph p)
POINTS_TO_GRAPH.
points_to_list check_points_to_list(points_to_list p)
void write_points_to(FILE *f, points_to p)
void points_to_assign_contents(points_to r, points_to v)
list gen_statement_points_to_cons(statement_points_to p, list l)
void statement_points_to_non_recursive_free(statement_points_to p)
void points_to_list_non_recursive_free(points_to_list p)
statement_points_to copy_statement_points_to(statement_points_to p)
STATEMENT_POINTS_TO.
bool bound_statement_points_to_p(statement_points_to f, statement k)
points_to_list apply_statement_points_to(statement_points_to f, statement k)
points_to check_points_to(points_to p)
points_to_graph check_points_to_graph(points_to_graph p)
void write_points_to_list(FILE *f, points_to_list p)
void points_to_graph_non_recursive_free(points_to_graph p)
bool points_to_list_defined_p(points_to_list p)
points_to_graph make_points_to_graph(bool a1, set a2)
statement_points_to check_statement_points_to(statement_points_to p)
points_to_list copy_points_to_list(points_to_list p)
POINTS_TO_LIST.
list gen_points_to_list_cons(points_to_list p, list l)
points_to_graph read_points_to_graph(FILE *f)
#define GEN_CHECK_ALLOC
Definition: genC.h:307
void gen_free(gen_chunk *obj)
version without shared_pointers.
Definition: genClib.c:992
gen_chunk * gen_alloc(int size, int gen_check_p, int dom,...)
allocates something in newgen.
Definition: genClib.c:298
int gen_consistent_p(gen_chunk *obj)
GEN_CONSISTENT_P dynamically checks the type correctness of OBJ.
Definition: genClib.c:2398
int gen_defined_p(gen_chunk *obj)
Definition: genClib.c:2438
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
gen_chunk * gen_read(FILE *file)
GEN_READ reads any object from the FILE stream.
Definition: genClib.c:2323
gen_chunk * gen_copy_tree(gen_chunk *obj)
Definition: genClib.c:1429
void gen_write(FILE *fd, gen_chunk *obj)
GEN_WRITE writes the OBJect on the stream FD.
Definition: genClib.c:1745
void free(void *)
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
#define message_assert(msg, ex)
Definition: newgen_assert.h:47
#define HASH_GET(start, image, h, k)
Definition: newgen_map.h:30
#define HASH_EXTEND(start, image, h, k, v)
Definition: newgen_map.h:36
#define HASH_DELETE(start, image, h, k)
Definition: newgen_map.h:38
#define HASH_UPDATE(start, image, h, k, v)
Definition: newgen_map.h:34
#define HASH_BOUND_P(start, image, h, k)
Definition: newgen_map.h:32
int f(int off1, int off2, int n, float r[n], float a[n], float b[n])
Definition: offsets.c:15
#define POINTS_TO_LIST_NEWGEN_DOMAIN
#define statement_points_to_hash_table(x)
#define STATEMENT_POINTS_TO_NEWGEN_DOMAIN
#define POINTS_TO_NEWGEN_DOMAIN
#define statement_points_to_domain
newgen_points_to_domain_defined
#define POINTS_TO_GRAPH_NEWGEN_DOMAIN
#define points_to_list_domain
Definition: print.c:370
#define points_to_domain
Definition: print.c:367
#define points_to_graph_domain
Definition: print.c:373
#define intptr_t
Definition: stdint.in.h:294
FI: I do not understand why the type is duplicated at the set level.
Definition: set.c:59
The structure used to build lists in NewGen.
Definition: newgen_list.h:41
A gen_chunk is used to store every object.
Definition: genC.h:58