[PATCH] [Polly][Fix] Non i1 typed select condition for weird pw aff functions.
Johannes Doerfert
doerfert at cs.uni-saarland.de
Mon Oct 6 10:46:51 PDT 2014
Hi grosser, sebpop, dpeixott, simbuerg,
In case the pieceweise affine function used to create an isl_ast_expr
had empty cases (e.g., with contradicting constraints on the
parameters), it was possible that the condition of the isl_ast_expr
select was not a comparison but a constant (thus of type i64).
This patch does two thing:
1) Handle the case the condition of a select is not a i1 type like C.
2) Try to simplify the pieceweise affine functions for the min/max
access when we generate runtime alias checks. That step can often
remove empty or redundant cases as well as redundant constrains.
This fixes bug: http://llvm.org/bugs/show_bug.cgi?id=21167
http://reviews.llvm.org/D5627
Files:
lib/Analysis/ScopInfo.cpp
lib/CodeGen/IslExprBuilder.cpp
test/Isl/CodeGen/test-invalid-operands-for-select-2.ll
test/Isl/CodeGen/test-invalid-operands-for-select.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D5627.14463.patch
Type: text/x-patch
Size: 7730 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141006/4ed509ed/attachment.bin>
More information about the llvm-commits
mailing list