[PATCH] [Polly][Refactor] Generalize parallel code generation

Johannes Doerfert doerfert at cs.uni-saarland.de
Fri Oct 3 11:28:03 PDT 2014

>>! In D4990#17, @grosser wrote:
> I like the idea with the DataLayout. This makes the behaviour a lot more clear. Thanks for insisting here.
> You also sneaked in a semantic change without a test case (actually it can not be tested as the current CLooG code generator always generates matching types making this basically dead code). I would feel more comfortable if we remove such asserts only when needed and with a specific test case and explaining why truncating is OK, instead of having this part of a larger refactoring.
> 	​ if (LB->getType() != LongType)
> 	​ LB = Builder.CreateSExtOrTrunc(LB, LongType);
> 	​ if (UB->getType() != LongType)
> 	​ UB = Builder.CreateSExtOrTrunc(UB, LongType);
> 	​ if (Stride->getType() != LongType)
> 	​ Stride = Builder.CreateSExtOrTrunc(Stride, LongType);

What exactly is your problem here?

The type asserts were introduced by my patch and are replaced by this
because we need this anyway. What else do we want to do if type(LB) <
LongType or type(LB) > LongType?


More information about the llvm-commits mailing list