summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2017-05-16 16:30:46 +0000
committerSanjay Patel <spatel@rotateright.com>2017-05-16 16:30:46 +0000
commitf5eeb35dcec4c1b5cc51e140288dba1c821d89a7 (patch)
treee7bcaaa3490ee18a5f1dd82fc9681c7729f79d2a
parentb10860788f9b2b8612cec4ab0768e10b960ffcf3 (diff)
downloadbcm5719-llvm-f5eeb35dcec4c1b5cc51e140288dba1c821d89a7.tar.gz
bcm5719-llvm-f5eeb35dcec4c1b5cc51e140288dba1c821d89a7.zip
[InstCombine] add motivational comment for tests; NFC
The referenced tests are derived from: https://bugs.llvm.org/show_bug.cgi?id=32791 and: https://reviews.llvm.org/D33172 The motivation for including negative tests may not be clear, so I'm adding an explanatory comment here. In the post-commit thread for r303133: http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20170515/453793.html ...it was mentioned that we don't want to add redundant tests. This is a valid point. But in this case, we have a patch under review (D33172) that demonstrates that no existing regression tests are affected by a proposed code change, but these are. Therefore, I think these tests have value not visible in any existing regression tests regardless of whether they show a transform. Differential Revision: https://reviews.llvm.org/D33242 llvm-svn: 303185
-rw-r--r--llvm/test/Transforms/InstCombine/logical-select.ll5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/test/Transforms/InstCombine/logical-select.ll b/llvm/test/Transforms/InstCombine/logical-select.ll
index 83a917d8125..7f0bd23eb8a 100644
--- a/llvm/test/Transforms/InstCombine/logical-select.ll
+++ b/llvm/test/Transforms/InstCombine/logical-select.ll
@@ -62,6 +62,11 @@ define i32 @poo(i32 %a, i32 %b, i32 %c, i32 %d) {
ret i32 %t3
}
+; TODO: For the next 4 tests, are there potential canonicalizations and/or folds for these
+; in InstCombine? Independent of that, tests like this that may not show any transforms
+; still have value because they can help identify conflicting canonicalization rules that
+; lead to infinite looping.
+
; PR32791 - https://bugs.llvm.org//show_bug.cgi?id=32791
; Fold two selects with inverted predicates and zero operands.
define i32 @fold_inverted_icmp_preds(i32 %a, i32 %b, i32 %c, i32 %d) {
OpenPOWER on IntegriCloud