[llvm-commits] [polly] r165379 - /polly/trunk/lib/Exchange/ScopLib.cpp

Tobias Grosser grosser at fim.uni-passau.de
Sun Oct 7 10:43:24 PDT 2012


Author: grosser
Date: Sun Oct  7 12:43:23 2012
New Revision: 165379

URL: http://llvm.org/viewvc/llvm-project?rev=165379&view=rev
Log:
ScopLib: Support negated access functions.

Scoplib only supports access functions, but not the more generic
access relations. This commit now also supports access functions
that where not directly expresses as A[sub] with sub = i + 5b,
but with A[sub] with -sub = -i + (-5b).

Test case to come.

Contributed by: Dustin Feld <d3.feld at gmail.com>

Modified:
    polly/trunk/lib/Exchange/ScopLib.cpp

Modified: polly/trunk/lib/Exchange/ScopLib.cpp
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/lib/Exchange/ScopLib.cpp?rev=165379&r1=165378&r2=165379&view=diff
==============================================================================
--- polly/trunk/lib/Exchange/ScopLib.cpp (original)
+++ polly/trunk/lib/Exchange/ScopLib.cpp Sun Oct  7 12:43:23 2012
@@ -372,8 +372,9 @@
 
   // The access dimension has to be one.
   isl_constraint_get_coefficient(c, isl_dim_out, 0, &v);
-  assert(isl_int_is_one(v));
-  bool inverse = true ;
+  assert((isl_int_is_one(v) || isl_int_is_negone(v))
+         && "Access relations not supported in scoplib");
+  bool inverse = isl_int_is_one(v);
 
   // Assign variables
   for (int i = 0; i < nb_in; ++i) {





More information about the llvm-commits mailing list