PIPS
reduction.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 "reduction.h"
13 
14 /* GEXPRESSION
15  */
17  return (gexpression) gen_copy_tree((gen_chunk*) p);
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 gexpression",
40  memcpy(r, v, sizeof(struct _newgen_struct_gexpression_));
41 }
43  // should clear up contents...
44  free(p);
45 }
47  gen_write(f, (gen_chunk*) p);
48 }
50  return (gexpression) gen_read(f);
51 }
54 }
55 
56 /* PATTERN
57  */
59  return (pattern) gen_copy_tree((gen_chunk*) p);
60 }
62  gen_free((gen_chunk*) p);
63 }
65  return (pattern) gen_check((gen_chunk*) p, pattern_domain);
66 }
68  check_pattern(p);
69  return gen_consistent_p((gen_chunk*) p);
70 }
72  return gen_defined_p((gen_chunk*) p);
73 }
76 }
78  check_pattern(r);
79  check_pattern(v);
80  message_assert("defined references to domain pattern",
82  memcpy(r, v, sizeof(struct _newgen_struct_pattern_));
83 }
85  // should clear up contents...
86  free(p);
87 }
88 void write_pattern(FILE* f, pattern p) {
89  gen_write(f, (gen_chunk*) p);
90 }
92  return (pattern) gen_read(f);
93 }
95  return (pattern) gen_alloc(6*sizeof(gen_chunk), GEN_CHECK_ALLOC, pattern_domain, a1, a2, a3, a4, a5);
96 }
97 
98 /* REDUCED_LOOPS
99  */
101  return (reduced_loops) gen_copy_tree((gen_chunk*) p);
102 }
104  gen_free((gen_chunk*) p);
105 }
108 }
111  return gen_consistent_p((gen_chunk*) p);
112 }
114  return gen_defined_p((gen_chunk*) p);
115 }
118 }
122  message_assert("defined references to domain reduced_loops",
124  memcpy(r, v, sizeof(struct _newgen_struct_reduced_loops_));
125 }
127  // should clear up contents...
128  free(p);
129 }
131  gen_write(f, (gen_chunk*) p);
132 }
134  return (reduced_loops) gen_read(f);
135 }
138 }
139 
140 /* SEXPRESSION
141  */
143  return (sexpression) gen_copy_tree((gen_chunk*) p);
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 sexpression",
166  memcpy(r, v, sizeof(struct _newgen_struct_sexpression_));
167 }
169  // should clear up contents...
170  free(p);
171 }
173  gen_write(f, (gen_chunk*) p);
174 }
176  return (sexpression) gen_read(f);
177 }
180 }
181 
gexpression make_gexpression(expression a1, expression a2)
Definition: reduction.c:52
void free_reduced_loops(reduced_loops p)
Definition: reduction.c:103
pattern read_pattern(FILE *f)
Definition: reduction.c:91
void reduced_loops_non_recursive_free(reduced_loops p)
Definition: reduction.c:126
sexpression check_sexpression(sexpression p)
Definition: reduction.c:148
void pattern_non_recursive_free(pattern p)
Definition: reduction.c:84
bool sexpression_defined_p(sexpression p)
Definition: reduction.c:155
void pattern_assign_contents(pattern r, pattern v)
Definition: reduction.c:77
bool reduced_loops_defined_p(reduced_loops p)
Definition: reduction.c:113
gexpression check_gexpression(gexpression p)
Definition: reduction.c:22
reduced_loops copy_reduced_loops(reduced_loops p)
REDUCED_LOOPS.
Definition: reduction.c:100
void sexpression_non_recursive_free(sexpression p)
Definition: reduction.c:168
bool gexpression_defined_p(gexpression p)
Definition: reduction.c:29
void free_pattern(pattern p)
Definition: reduction.c:61
bool gexpression_consistent_p(gexpression p)
Definition: reduction.c:25
void sexpression_assign_contents(sexpression r, sexpression v)
Definition: reduction.c:161
void gexpression_assign_contents(gexpression r, gexpression v)
Definition: reduction.c:35
bool reduced_loops_consistent_p(reduced_loops p)
Definition: reduction.c:109
bool pattern_consistent_p(pattern p)
Definition: reduction.c:67
reduced_loops make_reduced_loops(list a)
Definition: reduction.c:136
gexpression read_gexpression(FILE *f)
Definition: reduction.c:49
pattern check_pattern(pattern p)
Definition: reduction.c:64
reduced_loops read_reduced_loops(FILE *f)
Definition: reduction.c:133
void write_gexpression(FILE *f, gexpression p)
Definition: reduction.c:46
pattern copy_pattern(pattern p)
PATTERN.
Definition: reduction.c:58
list gen_pattern_cons(pattern p, list l)
Definition: reduction.c:74
void write_sexpression(FILE *f, sexpression p)
Definition: reduction.c:172
void write_pattern(FILE *f, pattern p)
Definition: reduction.c:88
void gexpression_non_recursive_free(gexpression p)
Definition: reduction.c:42
void reduced_loops_assign_contents(reduced_loops r, reduced_loops v)
Definition: reduction.c:119
gexpression copy_gexpression(gexpression p)
GEXPRESSION.
Definition: reduction.c:16
reduced_loops check_reduced_loops(reduced_loops p)
Definition: reduction.c:106
void write_reduced_loops(FILE *f, reduced_loops p)
Definition: reduction.c:130
bool pattern_defined_p(pattern p)
Definition: reduction.c:71
list gen_sexpression_cons(sexpression p, list l)
Definition: reduction.c:158
list gen_gexpression_cons(gexpression p, list l)
Definition: reduction.c:32
pattern make_pattern(entity a1, expression a2, expression a3, entity a4, list a5)
Definition: reduction.c:94
sexpression make_sexpression(list a)
Definition: reduction.c:178
list gen_reduced_loops_cons(reduced_loops p, list l)
Definition: reduction.c:116
bool sexpression_consistent_p(sexpression p)
Definition: reduction.c:151
void free_sexpression(sexpression p)
Definition: reduction.c:145
void free_gexpression(gexpression p)
Definition: reduction.c:19
sexpression copy_sexpression(sexpression p)
SEXPRESSION.
Definition: reduction.c:142
sexpression read_sexpression(FILE *f)
Definition: reduction.c:175
#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
int f(int off1, int off2, int n, float r[n], float a[n], float b[n])
Definition: offsets.c:15
#define sexpression_domain
newgen_reduced_loops_domain_defined
Definition: reduction.h:48
#define reduced_loops_domain
newgen_pattern_domain_defined
Definition: reduction.h:40
#define SEXPRESSION_NEWGEN_DOMAIN
Definition: reduction.h:51
#define REDUCED_LOOPS_NEWGEN_DOMAIN
Definition: reduction.h:43
#define GEXPRESSION_NEWGEN_DOMAIN
Definition: reduction.h:27
#define PATTERN_NEWGEN_DOMAIN
Definition: reduction.h:35
#define gexpression_domain
newgen_entity_domain_defined
Definition: reduction.h:24
#define pattern_domain
newgen_gexpression_domain_defined
Definition: reduction.h:32
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