To determine parameters of the matrix multiplication, we check RAW dependencies that can be expressed using only reduction dependencies. Consequently, we should check the reduction dependencies, if this is the case.

# Details

- Reviewers
Meinersbur grosser jdoerfert - Commits
- rGb196055c0cb8: Check reduction dependencies in case of the matrix multiplication optimization

rPLO294836: Check reduction dependencies in case of the matrix multiplication optimization

rL294836: Check reduction dependencies in case of the matrix multiplication optimization

# Diff Detail

- Repository
- rL LLVM

### Event Timeline

Otherwise, this looks good to me.

Some of the lower changes seem to be mostly stylistic. In case they are, I suggest to commit them ahead of time and then add the actual functionality change separately. In case it introduces a bug, the surface is smaller.

lib/Transform/ScheduleOptimizer.cpp | ||
---|---|---|

772 ↗ | (On Diff #87968) | Would it make sense to just compute the union of both? |

lib/Transform/ScheduleOptimizer.cpp | ||
---|---|---|

782 ↗ | (On Diff #87968) | This change seems unrelated |

2017-02-10 13:33 GMT+05:00 Tobias Grosser via Phabricator <reviews@reviews.llvm.org>:

grosser added a comment.

Otherwise, this looks good to me.

Some of the lower changes seem to be mostly stylistic. In case they are, I suggest to commit them ahead of time and then add the actual functionality change separately. In case it introduces a bug, the surface is smaller.

2017-02-10 13:43 GMT+05:00 Sven Verdoolaege <skimo-polly@kotnet.org>:

You're computing the domain of a schedule just to get its space?!??

Get the domain of the space instead.

2017-02-10 22:26 GMT+05:00 Michael Kruse via Phabricator <reviews@reviews.llvm.org>:

This change seems unrelated

Thanks for the comments! Stylistic changes can be found in r294831.