Add another note about a missed compare with nsw arithmetic instcombine.
authorBenjamin Kramer <benny.kra@googlemail.com>
Wed, 28 Mar 2012 10:50:18 +0000 (10:50 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Wed, 28 Mar 2012 10:50:18 +0000 (10:50 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153574 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/README.txt

index 8929ac4f2a610aad46fb37dc83bbc90f6c5f2996..3c21ddae80ca69e94af98cdc88192d3b046b22fe 100644 (file)
@@ -973,6 +973,13 @@ optimized with "clang -emit-llvm-bc | opt -std-compile-opts".
 
 //===---------------------------------------------------------------------===//
 
+int f(int i, int j) { return i < j + 1; }
+int g(int i, int j) { return j > i - 1; }
+Should combine to "i <= j" (the add/sub has nsw).  Currently not
+optimized with "clang -emit-llvm-bc | opt -std-compile-opts".
+
+//===---------------------------------------------------------------------===//
+
 This was noticed in the entryblock for grokdeclarator in 403.gcc:
 
         %tmp = icmp eq i32 %decl_context, 4