Do not assume all multi-parameter products are affine
authorTobias Grosser <tobias@grosser.es>
Sun, 5 Apr 2015 14:57:50 +0000 (14:57 +0000)
committerTobias Grosser <tobias@grosser.es>
Sun, 5 Apr 2015 14:57:50 +0000 (14:57 +0000)
commit2a586c387b0aedda5aa6477513a09c8f88387700
tree0c0373cd14c431bd7369bf9ecca2291c679cf6fc
parentbcf3bc2757702619cef87ce3a2b4a6ad3395e068
Do not assume all multi-parameter products are affine

As soon as one operand of the product is invalid, the entire product is invalid.
This happens for example if one of the operands is not loop-invariant.

This fixes http://llvm.org/PR23125

Reported-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com
llvm-svn: 234119
polly/lib/Support/SCEVValidator.cpp
polly/test/ScopDetect/parametric-multiply-in-scev-2.ll [new file with mode: 0644]