Tobias Grosser
442c6ccb8c
Add some missing __isl_give/__isl_keep annotations
...
llvm-svn: 232711
2015-03-19 07:43:35 +00:00
Tobias Grosser
9715b7c592
Add forgotten 'FileCheck' to tiling test cases
...
These test cases did not verify the CHECK lines at all. We add the FileCheck
and also fix some broken CHECK lines. Being here, we extend the checks to
cover the whole loop structure.
llvm-svn: 232710
2015-03-19 07:39:34 +00:00
Tobias Grosser
1de4e381ca
Update isl to 94d707d
...
The major improvements are:
- Extended schedule tree support
- AST generation from schedule trees
llvm-svn: 232709
2015-03-19 07:27:29 +00:00
Duncan P. N. Exon Smith
0353f279f1
Fix debug info now that the verifier is on
...
`i32 0` isn't a valid type, and `!{i32 0}` isn't an empty array.
Needed because of r232505.
llvm-svn: 232514
2015-03-17 18:23:38 +00:00
David Blaikie
4a54fae8cb
Test case updates for explicit type parameter to the gep operator
...
llvm-svn: 232186
2015-03-13 18:21:20 +00:00
Tobias Grosser
f2716ea7d5
Add -polly-vectorizer=stripmine
...
By strip-mining outer loops to the innermost level we can enable LLVM's loop
vectorizer to vectorize outer loops.
llvm-svn: 232100
2015-03-12 20:48:07 +00:00
Tobias Grosser
bb4126470a
Drop option to prepare code for the BB vectorizer
...
The BB vectorizer is deprecated and there is no point in generating code for it
any more. This option was introduced when there was not yet any loop vectorizer
in sight. Now being matured, Polly should target the loop vectorizer.
llvm-svn: 232099
2015-03-12 20:47:58 +00:00
Tobias Grosser
3284f1975c
Assert in isl expression builder if id can not be found [NFC]
...
llvm-svn: 231865
2015-03-10 22:35:43 +00:00
Tobias Grosser
36b8dd144d
Ensure the functions in our GPURuntime are visible
...
llvm-svn: 231835
2015-03-10 20:23:14 +00:00
Tobias Grosser
c98950671d
Fix compilation after DataLayout was added to ScevExpander
...
The corresponding LLVM commit is 231740.
llvm-svn: 231793
2015-03-10 15:24:33 +00:00
Tobias Grosser
ed61e1fcd1
Update PTX generator to latest LLVM changes
...
llvm-svn: 231652
2015-03-09 13:35:19 +00:00
Tobias Grosser
6e084ccda3
Shorten user report message slightly
...
llvm-svn: 231633
2015-03-09 06:59:16 +00:00
Johannes Doerfert
f4af99bc6a
[Formating] Fix formating
...
llvm-svn: 231612
2015-03-08 21:38:35 +00:00
Johannes Doerfert
7384399ddc
[FIX] Add and force initialization for Pass * member
...
r231268 accidently dropped the initialization that is re-introduced
here. The const will enforce initialization for the future.
llvm-svn: 231607
2015-03-08 20:14:34 +00:00
Johannes Doerfert
e4bd53bd0c
[FIX] Use the correct functions to extract the LB/UB from a range
...
The current tests will continue to cover this code and more will be
added when non-affine loops are supported.
llvm-svn: 231606
2015-03-08 19:49:50 +00:00
Tobias Grosser
f3c17e65d1
Drop meaningless test case
...
This test case was supposed to test the range analysis but it became just
another delinearization test case after enabling delinearization.
Suggested-by: Johannes Doerfert
llvm-svn: 231599
2015-03-08 16:12:47 +00:00
Johannes Doerfert
1e03f5d10d
Small change to create_ll.sh [NFC]
...
llvm-svn: 231596
2015-03-08 15:36:27 +00:00
Tobias Grosser
6973cb6ec7
Enable delinearization by default - second try
...
After having fixed the LNT bugs in the previous commits, lets reenable the
delinearization.
llvm-svn: 231595
2015-03-08 15:21:18 +00:00
Tobias Grosser
bf7193ae61
Update test cases to work independently of delinearization default
...
llvm-svn: 231594
2015-03-08 15:21:15 +00:00
Johannes Doerfert
6a4d81c1f6
Add end user report message for unprofitable regions [NFC]
...
llvm-svn: 231593
2015-03-08 15:11:50 +00:00
Tobias Grosser
90078c5580
Add sign-extension during codegen of index expressions
...
When code generating array index expressions the types of the different
components of the index expressions may not always match. We extend the type of
the index expression (if possible) and assert otherwise.
llvm-svn: 231592
2015-03-08 15:08:32 +00:00
Tobias Grosser
9d3c0b655a
Revert "Enable delinearization by default"
...
This reverts commit 231590. Apparantly we have three more issues left
in oggenc, smg2000 and linpack.
llvm-svn: 231591
2015-03-08 12:57:31 +00:00
Tobias Grosser
16c701d0c9
Enable delinearization by default
...
The performance test case just committed was the last open issue I was aware of.
We enable this by default to increase test coverage and to possibly trigger
reports of issues yet unknown.
llvm-svn: 231590
2015-03-08 12:30:37 +00:00
Tobias Grosser
6e4d597e86
Add delinearization test-case that timed out earlier
...
llvm-svn: 231589
2015-03-08 12:07:02 +00:00
Tobias Grosser
140b394e10
Fix compilation after 'Make DataLayout Non-Optional in the Module' commit
...
llvm-svn: 231362
2015-03-05 09:48:20 +00:00
Tobias Grosser
1fa434992b
Fix leftover Dependences.cpp -> DependenceInfo.cpp
...
llvm-svn: 231355
2015-03-05 06:52:42 +00:00
Johannes Doerfert
7e6424ba5a
Create a dependence struct to hold dependence information for a SCoP.
...
The new Dependences struct in the DependenceInfo holds all information
that was formerly part of the DependenceInfo. It also provides the
same interface for the user to access this information.
This is another step to a more general ScopPass interface that does
allow multiple SCoPs to be "in flight".
llvm-svn: 231327
2015-03-05 00:43:48 +00:00
Johannes Doerfert
6745822fd1
Add missing forward declaration [NFC]
...
llvm-svn: 231326
2015-03-05 00:40:07 +00:00
Johannes Doerfert
f6557f98a2
Rename the Dependences pass to DependenceInfo [NFC]
...
We rename the Dependences pass to DependenceInfo as a first step to a
caching pass policy. The new DependenceInfo pass will later provide
"Dependences" for a SCoP.
To keep consistency the test folder is renamed too.
llvm-svn: 231308
2015-03-04 22:43:40 +00:00
Johannes Doerfert
3f21e27ad3
Simplify dropConstantScheduleDims [NFC]
...
llvm-svn: 231304
2015-03-04 22:23:21 +00:00
Tobias Grosser
bb8d1562ad
Remove unnecessary dynamic memory management
...
llvm-svn: 231281
2015-03-04 19:33:31 +00:00
Tobias Grosser
3027fedce4
Allow to build shared libraries if BUILD_SHARED_LIBS is enabled
...
Contributed-by: Richard Membarth <richard.membarth@uni-saarland.de>
llvm-svn: 231272
2015-03-04 18:51:27 +00:00
Tobias Grosser
b021a4faad
Add support for conditional 'and' and 'or' expressions
...
No test cases unfortunately as we do not yet generate isl_ast_op_and_then or
isl_ast_op_or_else. Those will be added in a later commit.
llvm-svn: 231268
2015-03-04 18:14:59 +00:00
David Blaikie
23f94dfdf4
Update Polly tests for the great metadata schema change
...
llvm-svn: 231089
2015-03-03 18:17:26 +00:00
Johannes Doerfert
d239aac2ee
Do not model scalar accesses in non-affine subregions
...
If a scalar was defined and used only in a non-affine subregion we do
not need to model the accesses. However, if the scalar was defined
inside the region and escapes the region we have to model the access.
The same is true if the scalar was defined outside and used inside the
region.
llvm-svn: 230960
2015-03-02 14:06:01 +00:00
Johannes Doerfert
bbf3084561
[FIX] Make parallel codegen aware of region statements
...
llvm-svn: 230959
2015-03-02 13:41:53 +00:00
Johannes Doerfert
de4a0fd813
[Refactor] Include explicitly what is used
...
llvm-svn: 230902
2015-03-01 18:51:51 +00:00
Johannes Doerfert
f32d651df6
[Refactor] Include explicitly what is used
...
llvm-svn: 230901
2015-03-01 18:45:58 +00:00
Johannes Doerfert
f94d5178a5
[Refactor] Remove Scop * member to simplify JSON class
...
llvm-svn: 230900
2015-03-01 18:44:57 +00:00
Johannes Doerfert
2495cfe01d
[Refactor] Simplify ScopPass interface
...
llvm-svn: 230899
2015-03-01 18:43:50 +00:00
Johannes Doerfert
909a3bf21d
[Refactor] Use virtual and override appropriately
...
+ Add override for overwritten methods.
+ Remove virtual for methods we do not want to be overwritten.
llvm-svn: 230898
2015-03-01 18:42:08 +00:00
Johannes Doerfert
3fe584d64f
[Refactor] Add a Scop & as argument to printScop
...
This is the first step in the interface simplification.
llvm-svn: 230897
2015-03-01 18:40:25 +00:00
Johannes Doerfert
0200f2507e
[Cleanup] Remove unused passes
...
llvm-svn: 230896
2015-03-01 18:38:35 +00:00
Johannes Doerfert
7b1b724c89
Update obsolete comment
...
llvm-svn: 230857
2015-02-28 17:10:06 +00:00
Johannes Doerfert
d40991bf83
Format non-affine subregions news item
...
llvm-svn: 230852
2015-02-28 14:48:15 +00:00
Johannes Doerfert
c28197e619
Add non-affine subregions to the news
...
llvm-svn: 230851
2015-02-28 14:46:26 +00:00
Johannes Doerfert
6982fa4bb0
[Fix] Two tests that broke during the last changes
...
llvm-svn: 230800
2015-02-27 21:58:26 +00:00
David Blaikie
47d6783913
Fix test I missed
...
This was & is failing at ToT, but now it's failing for the original
reason, not because the IR can't be parsed.
llvm-svn: 230797
2015-02-27 21:31:00 +00:00
David Blaikie
c94eca0546
Update Polly tests to handle explicitly typed load changes in LLVM.
...
llvm-svn: 230796
2015-02-27 21:22:50 +00:00
David Blaikie
d7b6aa3251
Update one test I missed when updating for the opaque pointer gep changes to LLVM.
...
llvm-svn: 230792
2015-02-27 20:43:19 +00:00