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
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
test/Isl/CodeGen/test-invalid-operands-for-select-2.ll | ||
---|---|---|
3 | If you could add a one sentence explanation of the bug, that would be great. |
If you could add a one sentence explanation of the bug, that would be great.