On 27.01.2012 13:19, Richard Guenther wrote:
2012/1/27 Andrey Belevantsev<a...@ispras.ru>:
On 25.01.2012 18:21, Richard Guenther wrote:
2012/1/25 Andrey Belevantsev<a...@ispras.ru>:
...
Sure, I've just had the impression that the datarefs vector is no use
without the dependencies themselves. The possibility of making
find_data_references_in_loop static also kind of hints in this direction.
Anyways, I don't have any problem with fixing compute_all_dependences
instead.
I'd prefer that.
The below tests fine and passes the test case. compute_all_dependences now
returns bool and has the hunk from compute_data_dependences_for_loop for
creating a single dont-know datadep. The only caller that needs to be fixed
is compute_data_dependences_for_bb, others look fine.
Tree prefetching has its own knob for the same goal,
PREFETCH_MAX_MEM_REFS_PER_LOOP, which is 200. Do we want to remove it, to
change it to the new parameter (might be too big), or to leave it as is?
Just keep it for now as is.
Btw, did you check all callers to compute_all_dependences check its
return value? At least the array-prefetch and phiopt ones don't AFAICS.
These two don't but the following loops handle the situations of
chrec_dont_know deps and bail out in this case, so I decided that should be
fine. AFAICS, too.
Andrey
Ok for trunk.
Thanks,
Richard.