- Nov 04, 2012
-
-
Tobias Grosser authored
Use 'opt < %s' instead of just 'opt %s' to ensure that no temporary files are created. llvm-svn: 167372
-
- Nov 02, 2012
-
-
Tobias Grosser authored
llvm-svn: 167284
-
Tobias Grosser authored
llvm-svn: 167283
-
- Nov 01, 2012
-
-
Tobias Grosser authored
Similar to LLVM we now follow the policy of only having LLVM-IR level tests in the Polly test suite. Testing for miscompilation of larger programs should be done with the llvm test suite. llvm-svn: 167255
-
Tobias Grosser authored
Instead of calculating exact value (flow) dependences, it is also possible to calculate memory based dependences. Sometimes memory based dependences are a lot easier to calculate. To evaluate the benefits, we add an option to calculate memory based dependences (use -polly-value-dependences=false). llvm-svn: 167251
-
Tobias Grosser authored
If the flags '-polly-report -g' are given, we print file name and line numbers for the beginning and end of all detected scops. linear-algebra/kernels/gemm/gemm.c:23: Scop start linear-algebra/kernels/gemm/gemm.c:42: Scop end linear-algebra/kernels/gemm/gemm.c:77: Scop start linear-algebra/kernels/gemm/gemm.c:82: Scop end llvm-svn: 167235
-
Tobias Grosser authored
llvm-svn: 167234
-
Tobias Grosser authored
The detection of values that need to be copied in to the generated OpenMP subfunction also detects the array base addresses needed in the SCoP. Hence, it is not necessary to unconditionally copy all the base addresses to the generated function. Test cases are modified to reflect this change. Arrays which are global variables do not occur in the struct passed to the subfunction anymore. A test case for base address copy-in is added in copy_in_array.{c,ll}. Committed with slight modifications Contributed by: Armin Groesslinger <armin.groesslinger@uni-passau.de> llvm-svn: 167215
-
Tobias Grosser authored
In addition to the arrays and clast variables a SCoP statement may also refer to values defined before the SCoP or to function arguments. Detect these values and add them to the set of values passed to the function generated for OpenMP parallel execution of a clast. Committed with additional test cases and some refactoring. Contributed by: Armin Groesslinger <armin.groesslinger@uni-passau.de> llvm-svn: 167214
-
Tobias Grosser authored
When generating OpenMP or GPGPU code the original ValueMap and ClastVars must be kept. We already recovered the original ClastVars by reverting the changes, but we did not keep the content of the ValueMap. This patch keeps now an explicit copy of both maps and restores them after generating OpenMP or GPGPU code. This is an adapted version of a patch contributed by: Armin Groesslinger <armin.groesslinger@uni-passau.de> llvm-svn: 167213
-
- Oct 25, 2012
-
-
Chandler Carruth authored
I like to make w/o being able to build, but I don't have the dependencies to build and test polly. I'll revert if the build bots don't like it. llvm-svn: 166670
-
Chandler Carruth authored
llvm-svn: 166668
-
Chandler Carruth authored
llvm-svn: 166666
-
- Oct 21, 2012
-
-
Tobias Grosser authored
This change ensures that isl is only detected if it includes code generation support. This allows us to remove a lot of conditional compilation and also avoids missing test cases in case the feature is not available. llvm-svn: 166403
-
Tobias Grosser authored
On Linux there is no difference between shared modules and shared libaries, both are '.so' files. However, on darwin only shared modules are '.so' files. Shared libraries have the '.dynlib' suffix. Fix test cases on darwin by expecting a shared module suffix for Polly instead of a shared library suffix. This fixes PR14135 Reported by: Jack Howarth <howarth@bromo.med.uc.edu> llvm-svn: 166402
-
Tobias Grosser authored
llvm-svn: 166397
-
Tobias Grosser authored
Reported by: Jack Howarth <howarth@bromo.med.uc.edu> llvm-svn: 166396
-
Tobias Grosser authored
Contributed by: Sameer Sahasrabuddhe <sameer.sahasrabuddhe@amd.com> llvm-svn: 166394
-
- Oct 16, 2012
-
-
Tobias Grosser authored
The bug was within isl. To fix it, we simply update the isl version that is used by Polly. We still have some changes within Polly to be able to write a proper test case. Reported-by:
Sameer Sahasrabuddhe <Sameer.Sahasrabuddhe@amd.com> llvm-svn: 166021
-
Tobias Grosser authored
Previously isl always generated '<=' or '>='. However, in many cases '<' or '>' leads to simpler code. This commit updates isl and adds the relevant code generation support to Polly. llvm-svn: 166020
-
- Oct 12, 2012
-
-
Tobias Grosser authored
llvm-svn: 165789
-
- Oct 09, 2012
-
-
Sameer Sahasrabuddhe authored
llvm-svn: 165481
-
- Oct 08, 2012
-
-
Micah Villmow authored
llvm-svn: 165408
-
Tobias Grosser authored
Contributed by: Sameer Sahasrabuddhe <sameer.sahasrabuddhe@amd.com> llvm-svn: 165387
-
- Oct 07, 2012
-
-
Tobias Grosser authored
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@gmail.com> llvm-svn: 165379
-
Tobias Grosser authored
llvm-svn: 165378
-
- Oct 02, 2012
-
-
Tobias Grosser authored
This pass implements a new code generator that uses the code generation algorithm included in isl. For the moment the new code generation is limited to sequential code. llvm-svn: 165037
-
Tobias Grosser authored
llvm-svn: 165036
-
Tobias Grosser authored
llvm-svn: 165035
-
Tobias Grosser authored
llvm-svn: 165034
-
- Sep 21, 2012
-
-
Tobias Grosser authored
Older versions of libpluto crashed, if no schedule was found. Recent versions return NULL. We detect this and keep the original schedule. llvm-svn: 164376
-
- Sep 11, 2012
-
-
Tobias Grosser authored
At the moment we can handle such arrays only by conservatively assuming that each access to such an array may touch any element in the array. It would be great if we could improve Polly/LLVM at some point, such that we can recover the multi-dimensionality of the accesses. llvm-svn: 163619
-
Tobias Grosser authored
This ensures that the isl sets/maps we operate on have the same parameter dimensions. Operations on objects with different parameter dimensions are not allow and trigger assertions. llvm-svn: 163618
-
- Sep 08, 2012
-
-
Tobias Grosser authored
llvm-svn: 163472
-
Tobias Grosser authored
This code has been replaced by the SCEVValidator a while ago. llvm-svn: 163471
-
Tobias Grosser authored
Otherwise a '"' in the error message, yields an invalid .dot file. llvm-svn: 163466
-
- Sep 04, 2012
-
-
Tobias Grosser authored
The IndVarSimplify pass in Polly uses the intrinsics header. We need to ensure that the header is generated, before we use it. This patch fixes the problem for the cmake build (it did not show up in the autoconf one). Contributed by: Sameer Sahasrabuddhe <sameer.sahasrabuddhe@amd.com> llvm-svn: 163130
-
- Sep 03, 2012
-
-
Tobias Grosser authored
This fixes some undefined behavior in isl. Reported by: Sameer Sahasrabuddhe <sameer.sahasrabuddhe@amd.com> llvm-svn: 163108
-
- Aug 30, 2012
-
-
Tobias Grosser authored
This includes: - The isl_id of the domain of the scattering must be copied from the original domain - Remove outdated references to a 'FinalRead' statement - Print of the Pocc output, if -debug is provided. - Add line breaks to some error messages. Reported and Debugged by: Dustin Feld <d3.feld@gmail.com> llvm-svn: 162901
-
Tobias Grosser authored
llvm-svn: 162900
-