diff options
author | Tobias Grosser <tobias@grosser.es> | 2018-08-01 09:57:10 +0000 |
---|---|---|
committer | Tobias Grosser <tobias@grosser.es> | 2018-08-01 09:57:10 +0000 |
commit | a2fd441989b2d9510073e8ec6265d5aab7be6091 (patch) | |
tree | caeff17ba611047e9ddb6c6120ea84f3e01ed0df /polly/unittests | |
parent | d8baec2f467382227e8e904c1398fe3dee5e38c6 (diff) | |
download | llvm-a2fd441989b2d9510073e8ec6265d5aab7be6091.tar.gz |
Rebase C++ bindings on top of latest isl bindings
The main difference in this change is that isl_stat is now always
checked by default. As we elminiated most used of isl_stat, thanks to
Philip Pfaffe's implementation of foreach, only a small set of changes
is needed.
This change does not include the following recent changes to isl's C++
bindings:
- stricter error handling for isl_bool
- dropping of the isl::namespace qualifiers
The former requires a larger patch in Polly and consequently should go
through a patch-review. The latter will be applied in the next commit to
keep this commit free from noise.
We also still apply a couple of other changes on top of the official isl
bindings. This delta is expected to shrink over time.
llvm-svn: 338504
Diffstat (limited to 'polly/unittests')
-rw-r--r-- | polly/unittests/Isl/IslTest.cpp | 80 |
1 files changed, 46 insertions, 34 deletions
diff --git a/polly/unittests/Isl/IslTest.cpp b/polly/unittests/Isl/IslTest.cpp index 2fbf3364f1e5..ed88c5a7d19b 100644 --- a/polly/unittests/Isl/IslTest.cpp +++ b/polly/unittests/Isl/IslTest.cpp @@ -403,86 +403,98 @@ TEST(Isl, Foreach) { { auto NumBMaps = 0; - TestMap.foreach_basic_map([&](isl::basic_map BMap) -> isl::stat { - EXPECT_EQ(BMap, TestBMap); - NumBMaps++; - return isl::stat::ok; - }); + isl::stat Stat = + TestMap.foreach_basic_map([&](isl::basic_map BMap) -> isl::stat { + EXPECT_EQ(BMap, TestBMap); + NumBMaps++; + return isl::stat::ok(); + }); + + EXPECT_TRUE(Stat.is_ok()); EXPECT_EQ(1, NumBMaps); } { auto NumBSets = 0; - TestSet.foreach_basic_set([&](isl::basic_set BSet) -> isl::stat { - EXPECT_EQ(BSet, TestBSet); - NumBSets++; - return isl::stat::ok; - }); + isl::stat Stat = + TestSet.foreach_basic_set([&](isl::basic_set BSet) -> isl::stat { + EXPECT_EQ(BSet, TestBSet); + NumBSets++; + return isl::stat::ok(); + }); + EXPECT_TRUE(Stat.is_ok()); EXPECT_EQ(1, NumBSets); } { auto NumMaps = 0; - TestUMap.foreach_map([&](isl::map Map) -> isl::stat { + isl::stat Stat = TestUMap.foreach_map([&](isl::map Map) -> isl::stat { EXPECT_EQ(Map, TestMap); NumMaps++; - return isl::stat::ok; + return isl::stat::ok(); }); + EXPECT_TRUE(Stat.is_ok()); EXPECT_EQ(1, NumMaps); } { auto NumSets = 0; - TestUSet.foreach_set([&](isl::set Set) -> isl::stat { + isl::stat Stat = TestUSet.foreach_set([&](isl::set Set) -> isl::stat { EXPECT_EQ(Set, TestSet); NumSets++; - return isl::stat::ok; + return isl::stat::ok(); }); + EXPECT_TRUE(Stat.is_ok()); EXPECT_EQ(1, NumSets); } { auto UPwAff = isl::union_pw_aff(TestUSet, isl::val::zero(Ctx.get())); auto NumPwAffs = 0; - UPwAff.foreach_pw_aff([&](isl::pw_aff PwAff) -> isl::stat { + isl::stat Stat = UPwAff.foreach_pw_aff([&](isl::pw_aff PwAff) -> isl::stat { EXPECT_TRUE(PwAff.is_cst()); NumPwAffs++; - return isl::stat::ok; + return isl::stat::ok(); }); + EXPECT_TRUE(Stat.is_ok()); EXPECT_EQ(1, NumPwAffs); } { auto NumBMaps = 0; - EXPECT_EQ(isl::stat::error, - TestMap.foreach_basic_map([&](isl::basic_map BMap) -> isl::stat { - EXPECT_EQ(BMap, TestBMap); - NumBMaps++; - return isl::stat::error; - })); + EXPECT_TRUE(TestMap + .foreach_basic_map([&](isl::basic_map BMap) -> isl::stat { + EXPECT_EQ(BMap, TestBMap); + NumBMaps++; + return isl::stat::error(); + }) + .is_error()); EXPECT_EQ(1, NumBMaps); } { auto NumMaps = 0; - EXPECT_EQ(isl::stat::error, - TestUMap.foreach_map([&](isl::map Map) -> isl::stat { - EXPECT_EQ(Map, TestMap); - NumMaps++; - return isl::stat::error; - })); + EXPECT_TRUE(TestUMap + .foreach_map([&](isl::map Map) -> isl::stat { + EXPECT_EQ(Map, TestMap); + NumMaps++; + return isl::stat::error(); + }) + .is_error()); EXPECT_EQ(1, NumMaps); } { auto TestPwAff = isl::pw_aff(TestSet, isl::val::zero(Ctx.get())); auto NumPieces = 0; - TestPwAff.foreach_piece([&](isl::set Domain, isl::aff Aff) -> isl::stat { - EXPECT_EQ(Domain, TestSet); - EXPECT_TRUE(Aff.is_cst()); - NumPieces++; - return isl::stat::error; - }); + isl::stat Stat = TestPwAff.foreach_piece( + [&](isl::set Domain, isl::aff Aff) -> isl::stat { + EXPECT_EQ(Domain, TestSet); + EXPECT_TRUE(Aff.is_cst()); + NumPieces++; + return isl::stat::error(); + }); + EXPECT_TRUE(Stat.is_error()); EXPECT_EQ(1, NumPieces); } } |