Skip to content

Commit 13f95cc

Browse files
committed
Update isl to isl-0.24-69-g54aac5ac
This is needed for having the functions isl_{set,map}_n_basic_{set,map} exported to the C++ interface
1 parent d990852 commit 13f95cc

20 files changed

+331
-25
lines changed

polly/lib/External/isl/GIT_HEAD_ID

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
isl-0.24-52-gd7be01f7
1+
isl-0.24-69-g54aac5ac

polly/lib/External/isl/Makefile.am

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -498,6 +498,7 @@ EXTRA_DIST = \
498498
bset_to_bmap.c \
499499
bset_from_bmap.c \
500500
isl_check_named_params_templ.c \
501+
check_parse_fail_test_templ.c \
501502
check_reparse_templ.c \
502503
check_reparse_test_templ.c \
503504
check_single_reference_templ.c \

polly/lib/External/isl/Makefile.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1398,6 +1398,7 @@ EXTRA_DIST = \
13981398
bset_to_bmap.c \
13991399
bset_from_bmap.c \
14001400
isl_check_named_params_templ.c \
1401+
check_parse_fail_test_templ.c \
14011402
check_reparse_templ.c \
14021403
check_reparse_test_templ.c \
14031404
check_single_reference_templ.c \
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
/*
2+
* Copyright 2021 Cerebras Systems
3+
*
4+
* Use of this software is governed by the MIT license
5+
*
6+
* Written by Sven Verdoolaege,
7+
* Cerebras Systems, 1237 E Arques Ave, Sunnyvale, CA, USA
8+
*/
9+
10+
#define xCAT(A,B) A ## B
11+
#define CAT(A,B) xCAT(A,B)
12+
#undef TYPE
13+
#define TYPE CAT(isl_,BASE)
14+
#define xFN(TYPE,NAME) TYPE ## _ ## NAME
15+
#define FN(TYPE,NAME) xFN(TYPE,NAME)
16+
17+
#undef TESTS
18+
#define TESTS CAT(parse_,CAT(BASE,_fail_tests))
19+
20+
/* Test parsing of objects of type TYPE
21+
* that are expected to fail.
22+
*/
23+
static isl_stat FN(check,TESTS)(isl_ctx *ctx)
24+
{
25+
int i, n;
26+
int on_error;
27+
28+
on_error = isl_options_get_on_error(ctx);
29+
isl_options_set_on_error(ctx, ISL_ON_ERROR_CONTINUE);
30+
n = ARRAY_SIZE(TESTS);
31+
for (i = 0; i < n; ++i) {
32+
TYPE *obj;
33+
34+
obj = FN(TYPE,read_from_str)(ctx, TESTS[i]);
35+
FN(TYPE,free)(obj);
36+
if (obj)
37+
break;
38+
}
39+
isl_options_set_on_error(ctx, on_error);
40+
if (i < n)
41+
isl_die(ctx, isl_error_unknown,
42+
"parsing not expected to succeed",
43+
return isl_stat_error);
44+
45+
return isl_stat_ok;
46+
}

polly/lib/External/isl/check_reparse_test_templ.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
#define xFN(TYPE,NAME) TYPE ## _ ## NAME
66
#define FN(TYPE,NAME) xFN(TYPE,NAME)
77

8+
#undef TESTS
89
#define TESTS CAT(reparse_,CAT(BASE,_tests))
910

1011
/* Test parsing of objects of type TYPE by printing

polly/lib/External/isl/include/isl/aff.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,7 @@ void isl_aff_dump(__isl_keep isl_aff *aff);
212212
isl_ctx *isl_pw_aff_get_ctx(__isl_keep isl_pw_aff *pwaff);
213213
uint32_t isl_pw_aff_get_hash(__isl_keep isl_pw_aff *pa);
214214
__isl_give isl_space *isl_pw_aff_get_domain_space(__isl_keep isl_pw_aff *pwaff);
215+
__isl_export
215216
__isl_give isl_space *isl_pw_aff_get_space(__isl_keep isl_pw_aff *pwaff);
216217

217218
__isl_constructor

polly/lib/External/isl/include/isl/cpp-checked.h

Lines changed: 41 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1490,6 +1490,7 @@ class basic_map {
14901490
inline isl::checked::map_list map_list() const;
14911491
inline isl::checked::multi_pw_aff max_multi_pw_aff() const;
14921492
inline isl::checked::multi_pw_aff min_multi_pw_aff() const;
1493+
inline class size n_basic_map() const;
14931494
inline isl::checked::basic_map polyhedral_hull() const;
14941495
inline isl::checked::map preimage_domain(const isl::checked::multi_aff &ma) const;
14951496
inline isl::checked::map preimage_domain(const isl::checked::multi_pw_aff &mpa) const;
@@ -1623,6 +1624,7 @@ class basic_set {
16231624
inline isl::checked::val max_val(const isl::checked::aff &obj) const;
16241625
inline isl::checked::multi_pw_aff min_multi_pw_aff() const;
16251626
inline isl::checked::val min_val(const isl::checked::aff &obj) const;
1627+
inline class size n_basic_set() const;
16261628
inline isl::checked::basic_set params() const;
16271629
inline isl::checked::multi_val plain_multi_val_if_fixed() const;
16281630
inline isl::checked::basic_set polyhedral_hull() const;
@@ -1908,6 +1910,7 @@ class map {
19081910
inline isl::checked::map_list map_list() const;
19091911
inline isl::checked::multi_pw_aff max_multi_pw_aff() const;
19101912
inline isl::checked::multi_pw_aff min_multi_pw_aff() const;
1913+
inline class size n_basic_map() const;
19111914
inline isl::checked::basic_map polyhedral_hull() const;
19121915
inline isl::checked::map preimage_domain(isl::checked::multi_aff ma) const;
19131916
inline isl::checked::map preimage_domain(isl::checked::multi_pw_aff mpa) const;
@@ -2542,6 +2545,7 @@ class point {
25422545
inline isl::checked::val min_val(const isl::checked::aff &obj) const;
25432546
inline isl::checked::multi_val multi_val() const;
25442547
inline isl::checked::multi_val get_multi_val() const;
2548+
inline class size n_basic_set() const;
25452549
inline isl::checked::basic_set params() const;
25462550
inline isl::checked::multi_val plain_multi_val_if_fixed() const;
25472551
inline isl::checked::basic_set polyhedral_hull() const;
@@ -2719,6 +2723,7 @@ class pw_aff {
27192723
inline isl::checked::pw_multi_aff set_range_tuple(const std::string &id) const;
27202724
inline class size size() const;
27212725
inline isl::checked::space space() const;
2726+
inline isl::checked::space get_space() const;
27222727
inline isl::checked::multi_pw_aff sub(const isl::checked::multi_pw_aff &multi2) const;
27232728
inline isl::checked::multi_union_pw_aff sub(const isl::checked::multi_union_pw_aff &multi2) const;
27242729
inline isl::checked::pw_aff sub(isl::checked::pw_aff pwaff2) const;
@@ -3488,6 +3493,7 @@ class set {
34883493
inline isl::checked::val max_val(const isl::checked::aff &obj) const;
34893494
inline isl::checked::multi_pw_aff min_multi_pw_aff() const;
34903495
inline isl::checked::val min_val(const isl::checked::aff &obj) const;
3496+
inline class size n_basic_set() const;
34913497
inline isl::checked::set params() const;
34923498
inline isl::checked::multi_val plain_multi_val_if_fixed() const;
34933499
inline isl::checked::multi_val get_plain_multi_val_if_fixed() const;
@@ -4993,7 +4999,7 @@ class size aff::size() const
49934999

49945000
isl::checked::space aff::space() const
49955001
{
4996-
return isl::checked::multi_aff(*this).space();
5002+
return isl::checked::pw_aff(*this).space();
49975003
}
49985004

49995005
isl::checked::aff aff::sub(isl::checked::aff aff2) const
@@ -7677,6 +7683,11 @@ isl::checked::multi_pw_aff basic_map::min_multi_pw_aff() const
76777683
return isl::checked::map(*this).min_multi_pw_aff();
76787684
}
76797685

7686+
class size basic_map::n_basic_map() const
7687+
{
7688+
return isl::checked::map(*this).n_basic_map();
7689+
}
7690+
76807691
isl::checked::basic_map basic_map::polyhedral_hull() const
76817692
{
76827693
return isl::checked::map(*this).polyhedral_hull();
@@ -8291,6 +8302,11 @@ isl::checked::val basic_set::min_val(const isl::checked::aff &obj) const
82918302
return isl::checked::set(*this).min_val(obj);
82928303
}
82938304

8305+
class size basic_set::n_basic_set() const
8306+
{
8307+
return isl::checked::set(*this).n_basic_set();
8308+
}
8309+
82948310
isl::checked::basic_set basic_set::params() const
82958311
{
82968312
auto res = isl_basic_set_params(copy());
@@ -9534,6 +9550,12 @@ isl::checked::multi_pw_aff map::min_multi_pw_aff() const
95349550
return manage(res);
95359551
}
95369552

9553+
class size map::n_basic_map() const
9554+
{
9555+
auto res = isl_map_n_basic_map(get());
9556+
return manage(res);
9557+
}
9558+
95379559
isl::checked::basic_map map::polyhedral_hull() const
95389560
{
95399561
auto res = isl_map_polyhedral_hull(copy());
@@ -12439,6 +12461,11 @@ isl::checked::multi_val point::get_multi_val() const
1243912461
return multi_val();
1244012462
}
1244112463

12464+
class size point::n_basic_set() const
12465+
{
12466+
return isl::checked::basic_set(*this).n_basic_set();
12467+
}
12468+
1244212469
isl::checked::basic_set point::params() const
1244312470
{
1244412471
return isl::checked::basic_set(*this).params();
@@ -13290,7 +13317,13 @@ class size pw_aff::size() const
1329013317

1329113318
isl::checked::space pw_aff::space() const
1329213319
{
13293-
return isl::checked::union_pw_aff(*this).space();
13320+
auto res = isl_pw_aff_get_space(get());
13321+
return manage(res);
13322+
}
13323+
13324+
isl::checked::space pw_aff::get_space() const
13325+
{
13326+
return space();
1329413327
}
1329513328

1329613329
isl::checked::multi_pw_aff pw_aff::sub(const isl::checked::multi_pw_aff &multi2) const
@@ -16217,6 +16250,12 @@ isl::checked::val set::min_val(const isl::checked::aff &obj) const
1621716250
return manage(res);
1621816251
}
1621916252

16253+
class size set::n_basic_set() const
16254+
{
16255+
auto res = isl_set_n_basic_set(get());
16256+
return manage(res);
16257+
}
16258+
1622016259
isl::checked::set set::params() const
1622116260
{
1622216261
auto res = isl_set_params(copy());

polly/lib/External/isl/include/isl/cpp.h

Lines changed: 63 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1555,6 +1555,7 @@ class basic_map {
15551555
inline isl::map_list map_list() const;
15561556
inline isl::multi_pw_aff max_multi_pw_aff() const;
15571557
inline isl::multi_pw_aff min_multi_pw_aff() const;
1558+
inline unsigned n_basic_map() const;
15581559
inline isl::basic_map polyhedral_hull() const;
15591560
inline isl::map preimage_domain(const isl::multi_aff &ma) const;
15601561
inline isl::map preimage_domain(const isl::multi_pw_aff &mpa) const;
@@ -1688,6 +1689,7 @@ class basic_set {
16881689
inline isl::val max_val(const isl::aff &obj) const;
16891690
inline isl::multi_pw_aff min_multi_pw_aff() const;
16901691
inline isl::val min_val(const isl::aff &obj) const;
1692+
inline unsigned n_basic_set() const;
16911693
inline isl::basic_set params() const;
16921694
inline isl::multi_val plain_multi_val_if_fixed() const;
16931695
inline isl::basic_set polyhedral_hull() const;
@@ -1973,6 +1975,7 @@ class map {
19731975
inline isl::map_list map_list() const;
19741976
inline isl::multi_pw_aff max_multi_pw_aff() const;
19751977
inline isl::multi_pw_aff min_multi_pw_aff() const;
1978+
inline unsigned n_basic_map() const;
19761979
inline isl::basic_map polyhedral_hull() const;
19771980
inline isl::map preimage_domain(isl::multi_aff ma) const;
19781981
inline isl::map preimage_domain(isl::multi_pw_aff mpa) const;
@@ -2607,6 +2610,7 @@ class point {
26072610
inline isl::val min_val(const isl::aff &obj) const;
26082611
inline isl::multi_val multi_val() const;
26092612
inline isl::multi_val get_multi_val() const;
2613+
inline unsigned n_basic_set() const;
26102614
inline isl::basic_set params() const;
26112615
inline isl::multi_val plain_multi_val_if_fixed() const;
26122616
inline isl::basic_set polyhedral_hull() const;
@@ -2784,6 +2788,7 @@ class pw_aff {
27842788
inline isl::pw_multi_aff set_range_tuple(const std::string &id) const;
27852789
inline unsigned size() const;
27862790
inline isl::space space() const;
2791+
inline isl::space get_space() const;
27872792
inline isl::multi_pw_aff sub(const isl::multi_pw_aff &multi2) const;
27882793
inline isl::multi_union_pw_aff sub(const isl::multi_union_pw_aff &multi2) const;
27892794
inline isl::pw_aff sub(isl::pw_aff pwaff2) const;
@@ -3553,6 +3558,7 @@ class set {
35533558
inline isl::val max_val(const isl::aff &obj) const;
35543559
inline isl::multi_pw_aff min_multi_pw_aff() const;
35553560
inline isl::val min_val(const isl::aff &obj) const;
3561+
inline unsigned n_basic_set() const;
35563562
inline isl::set params() const;
35573563
inline isl::multi_val plain_multi_val_if_fixed() const;
35583564
inline isl::multi_val get_plain_multi_val_if_fixed() const;
@@ -5416,7 +5422,7 @@ isl::space aff::space() const
54165422
{
54175423
if (!ptr)
54185424
exception::throw_invalid("NULL input", __FILE__, __LINE__);
5419-
return isl::multi_aff(*this).space();
5425+
return isl::pw_aff(*this).space();
54205426
}
54215427

54225428
isl::aff aff::sub(isl::aff aff2) const
@@ -8980,6 +8986,13 @@ isl::multi_pw_aff basic_map::min_multi_pw_aff() const
89808986
return isl::map(*this).min_multi_pw_aff();
89818987
}
89828988

8989+
unsigned basic_map::n_basic_map() const
8990+
{
8991+
if (!ptr)
8992+
exception::throw_invalid("NULL input", __FILE__, __LINE__);
8993+
return isl::map(*this).n_basic_map();
8994+
}
8995+
89838996
isl::basic_map basic_map::polyhedral_hull() const
89848997
{
89858998
if (!ptr)
@@ -9896,6 +9909,13 @@ isl::val basic_set::min_val(const isl::aff &obj) const
98969909
return isl::set(*this).min_val(obj);
98979910
}
98989911

9912+
unsigned basic_set::n_basic_set() const
9913+
{
9914+
if (!ptr)
9915+
exception::throw_invalid("NULL input", __FILE__, __LINE__);
9916+
return isl::set(*this).n_basic_set();
9917+
}
9918+
98999919
isl::basic_set basic_set::params() const
99009920
{
99019921
if (!ptr)
@@ -11875,6 +11895,18 @@ isl::multi_pw_aff map::min_multi_pw_aff() const
1187511895
return manage(res);
1187611896
}
1187711897

11898+
unsigned map::n_basic_map() const
11899+
{
11900+
if (!ptr)
11901+
exception::throw_invalid("NULL input", __FILE__, __LINE__);
11902+
auto saved_ctx = ctx();
11903+
options_scoped_set_on_error saved_on_error(saved_ctx, exception::on_error);
11904+
auto res = isl_map_n_basic_map(get());
11905+
if (res < 0)
11906+
exception::throw_last_error(saved_ctx);
11907+
return res;
11908+
}
11909+
1187811910
isl::basic_map map::polyhedral_hull() const
1187911911
{
1188011912
if (!ptr)
@@ -16592,6 +16624,13 @@ isl::multi_val point::get_multi_val() const
1659216624
return multi_val();
1659316625
}
1659416626

16627+
unsigned point::n_basic_set() const
16628+
{
16629+
if (!ptr)
16630+
exception::throw_invalid("NULL input", __FILE__, __LINE__);
16631+
return isl::basic_set(*this).n_basic_set();
16632+
}
16633+
1659516634
isl::basic_set point::params() const
1659616635
{
1659716636
if (!ptr)
@@ -17913,7 +17952,17 @@ isl::space pw_aff::space() const
1791317952
{
1791417953
if (!ptr)
1791517954
exception::throw_invalid("NULL input", __FILE__, __LINE__);
17916-
return isl::union_pw_aff(*this).space();
17955+
auto saved_ctx = ctx();
17956+
options_scoped_set_on_error saved_on_error(saved_ctx, exception::on_error);
17957+
auto res = isl_pw_aff_get_space(get());
17958+
if (!res)
17959+
exception::throw_last_error(saved_ctx);
17960+
return manage(res);
17961+
}
17962+
17963+
isl::space pw_aff::get_space() const
17964+
{
17965+
return space();
1791717966
}
1791817967

1791917968
isl::multi_pw_aff pw_aff::sub(const isl::multi_pw_aff &multi2) const
@@ -22502,6 +22551,18 @@ isl::val set::min_val(const isl::aff &obj) const
2250222551
return manage(res);
2250322552
}
2250422553

22554+
unsigned set::n_basic_set() const
22555+
{
22556+
if (!ptr)
22557+
exception::throw_invalid("NULL input", __FILE__, __LINE__);
22558+
auto saved_ctx = ctx();
22559+
options_scoped_set_on_error saved_on_error(saved_ctx, exception::on_error);
22560+
auto res = isl_set_n_basic_set(get());
22561+
if (res < 0)
22562+
exception::throw_last_error(saved_ctx);
22563+
return res;
22564+
}
22565+
2250522566
isl::set set::params() const
2250622567
{
2250722568
if (!ptr)

polly/lib/External/isl/include/isl/map.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -698,6 +698,7 @@ isl_bool isl_map_plain_is_equal(__isl_keep isl_map *map1,
698698

699699
uint32_t isl_map_get_hash(__isl_keep isl_map *map);
700700

701+
__isl_export
701702
isl_size isl_map_n_basic_map(__isl_keep isl_map *map);
702703
__isl_export
703704
isl_stat isl_map_foreach_basic_map(__isl_keep isl_map *map,

polly/lib/External/isl/include/isl/set.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -512,6 +512,7 @@ isl_bool isl_set_plain_is_disjoint(__isl_keep isl_set *set1,
512512

513513
uint32_t isl_set_get_hash(__isl_keep isl_set *set);
514514

515+
__isl_export
515516
isl_size isl_set_n_basic_set(__isl_keep isl_set *set);
516517
__isl_export
517518
isl_stat isl_set_foreach_basic_set(__isl_keep isl_set *set,

0 commit comments

Comments
 (0)