> I assume so. However, we always want signed types, so the second > argument should be zero, no?
Yes, you are right. > How did you verify that the semantics of the GCC and isl expressions are > identical? I haven't tested it on examples yet. I've only matched their semantics from the isl manual and the documentation of gcc internals (https://gcc.gnu.org/onlinedocs/gccint/Unary-and-Binary-Expressions.html#Unary-and-Binary-Expressions). > The kind of code you write looks very good. Now, the only question is > how can we commit it as quickly as possible. This means we need to add > just enough functionality such that we create a working subset that is > testable. Testing in gcc is a little difficult, as we commonly work > from C output to a testable executable. Maybe we should have a look at > the existing graphite test cases for -fgraphite-identify and identify > the simplest ones. Or we can even create simpler ones. > > I assume the easiest one is a single loop: > > for (i = 0; i < 100; i++) > A[i] = i; > > Alternatively, we could try create unit tests for the expressions. > However, I am not sure if there exists a unit-test infrastructure in > gcc. Yes, I've started to working on simple DejaGnu test cases for these expressions, which will possibly use the previous ones. -- Cheers, Roman Gareev