Polly
19.0.0git
llvm-project
polly
lib
External
isl
isl_test_list_templ.c
Go to the documentation of this file.
1
#define xCAT(A,B) A ## B
2
#define CAT(A,B) xCAT(A,B)
3
#define xFN(TYPE,NAME) TYPE ## _ ## NAME
4
#define FN(TYPE,NAME) xFN(TYPE,NAME)
5
#define xLIST(EL) EL ## _list
6
#define LIST(EL) xLIST(EL)
7
8
#undef SET
9
#define SET CAT(isl_,SET_BASE)
10
#undef EL
11
#define EL CAT(isl_,EL_BASE)
12
13
/* Check that the conversion from SET to list of EL works as expected,
14
* using input described by "str".
15
*/
16
static
isl_stat
FN
(
FN
(
FN
(
test_get_list
,
EL_BASE
),from),
SET_BASE
)(
isl_ctx
*ctx,
17
const
char
*
str
)
18
{
19
int
i;
20
isl_size
n
;
21
isl_bool
equal
;
22
SET
*
set
, *
set2
;
23
LIST
(
EL
) *list;
24
25
set
=
FN
(
SET
,read_from_str)(ctx,
str
);
26
list =
FN
(
FN
(
SET
,get),
LIST
(
EL_BASE
))(
set
);
27
28
set2
=
FN
(
SET
,empty)(
FN
(
SET
,get_space)(
set
));
29
30
n
=
FN
(
LIST
(
EL
),
size
)(list);
31
for
(i = 0; i <
n
; i++) {
32
EL
*el;
33
el =
FN
(
LIST
(
EL
),get_at)(list, i);
34
set2
=
FN
(
SET
,
union
)(
set2
,
FN
(
FN
(
SET
,from),
EL_BASE
)(el));
35
}
36
37
equal
=
FN
(
SET
,
is_equal
)(
set
,
set2
);
38
39
FN
(
SET
,free)(
set
);
40
FN
(
SET
,free)(
set2
);
41
FN
(
LIST
(
EL
),free)(list);
42
43
if
(
n
< 0 ||
equal
< 0)
44
return
isl_stat_error
;
45
46
if
(!
equal
)
47
isl_die
(ctx,
isl_error_unknown
,
"collections are not equal"
,
48
return
isl_stat_error
);
49
50
return
isl_stat_ok
;
51
}
isl_stat
isl_stat
Definition:
ctx.h:84
isl_stat_error
@ isl_stat_error
Definition:
ctx.h:85
isl_stat_ok
@ isl_stat_ok
Definition:
ctx.h:86
isl_die
#define isl_die(ctx, errno, msg, code)
Definition:
ctx.h:137
isl_error_unknown
@ isl_error_unknown
Definition:
ctx.h:78
isl_size
int isl_size
Definition:
ctx.h:96
isl_bool
isl_bool
Definition:
ctx.h:89
EL_BASE
#define EL_BASE
Definition:
isl_aff.c:64
is_equal
static bool is_equal(const T &a, const T &b)
Definition:
isl_test2.cc:99
set
const char * set
Definition:
isl_test.c:1356
SET_BASE
#define SET_BASE
Definition:
isl_test.c:4125
equal
int equal
Definition:
isl_test.c:7868
test_get_list
static int test_get_list(isl_ctx *ctx)
Definition:
isl_test.c:4130
set2
const char * set2
Definition:
isl_test.c:4204
size
const char * size
Definition:
isl_test.c:1570
str
const char * str
Definition:
isl_test.c:2095
LIST
#define LIST(EL)
Definition:
isl_test_list_templ.c:6
SET
#define SET
Definition:
isl_test_list_templ.c:9
EL
#define EL
Definition:
isl_test_list_templ.c:11
FN
#define FN(TYPE, NAME)
Definition:
isl_test_list_templ.c:4
isl_ctx
Definition:
isl_ctx_private.h:11
n
n
Definition:
youcefn.c:8
Generated on Fri May 3 2024 00:21:35 for Polly by
1.9.6