Commit Graph

267 Commits

Author SHA1 Message Date
Tobias Grosser eadc4285db ScopDetection: Add ValidatorResult class
llvm-svn: 143958
2011-11-07 12:58:41 +00:00
Tobias Grosser 2d0b1f9d8a ScopDetection: Small fixes and improvements for the SCEVValidator
These fixes were part of a code audit of the SCEVValidator.

llvm-svn: 143692
2011-11-04 10:08:08 +00:00
Tobias Grosser 76164677f8 ScopDetection: Use SCEVValidator for memory accesses.
We currently run the old memory access checker in parallel, as we would
otherwise fail in TempScop because of currently unsupported functions. We will
remove the old memory access checker as soon as TempScop is fixed.

llvm-svn: 143654
2011-11-03 21:03:18 +00:00
Tobias Grosser 2fea5c68fd ScopDetection: Use SCEVValidator for conditions
llvm-svn: 143653
2011-11-03 21:03:14 +00:00
Tobias Grosser ad96c4b06d ScopDetection: A parameter cannot appear inside a SCoP.
llvm-svn: 143650
2011-11-03 21:03:01 +00:00
Tobias Grosser 3fb4992221 ScopDetection: Add new SCEV Validator
The SCEV Validator is used to check if the bound of a loop can be translated
into a polyhedral constraint. The new validator is more general as the check
used previously and e.g. allows bounds like 'smax 1, %a'. At the moment, we
only allow signed comparisons. Also, the new validator is only used to verify
loop bounds. Memory accesses are still handled by the old validator.

llvm-svn: 143576
2011-11-02 21:40:08 +00:00
Tobias Grosser bd54f3226f ScopInfo: Print SCEV and not the pointer to it
llvm-svn: 143004
2011-10-26 01:27:49 +00:00
Tobias Grosser 2ff8723d5d ScopDetection: Allow to limit the scop detection to a single function
-polly-detect-only=<functionname> allows to limit the scop detection to
a single function.

llvm-svn: 142750
2011-10-23 11:17:06 +00:00
Tobias Grosser b43ba82c94 ScopDetection: Improve error messages and add another INVALID case.
llvm-svn: 141461
2011-10-08 00:49:30 +00:00
Tobias Grosser 4f129a6b43 Show the reason a region is not a SCoP in the DOT graphs.
llvm-svn: 141458
2011-10-08 00:30:55 +00:00
Tobias Grosser c4a0bd13ad ScopDetection: Unify the handling of invalid SCoPs
llvm-svn: 141457
2011-10-08 00:30:48 +00:00
Tobias Grosser 73600b8edd Initialize the passes early and properly.
llvm-svn: 141455
2011-10-08 00:30:40 +00:00
Tobias Grosser 83f5c43ede Add some forgotten passes to LinkAllPasses
llvm-svn: 138400
2011-08-23 22:35:08 +00:00
Tobias Grosser e91c53d2a9 CodeGeneration: No need to forget SCoP.
As we do not delete the SCoP, there is no need to remove it from the SCoP
detection.

llvm-svn: 131356
2011-05-14 19:02:21 +00:00
Tobias Grosser a806606aaa ScopDetection: Move implementation of function from header to .cpp file
llvm-svn: 131246
2011-05-12 21:33:28 +00:00
Hongbin Zheng 94c5df16e2 ScopDetection: Remember the functions generated by backend in a pointer set, so we
do not re-generate code for these functions.

llvm-svn: 130975
2011-05-06 02:38:20 +00:00
Tobias Grosser 758053788b Add initial version of Polly
This version is equivalent to commit ba26ebece8f5be84e9bd6315611d412af797147e
in the old git repository.

llvm-svn: 130476
2011-04-29 06:27:02 +00:00