From: Chris Lattner Date: Wed, 16 Feb 2011 19:16:34 +0000 (+0000) Subject: Add a few missed xforms from GCC PR14753 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=5653f1f9046c6c954e6f74869ca927611c050938;p=oota-llvm.git Add a few missed xforms from GCC PR14753 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125681 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/README.txt b/lib/Target/README.txt index 5aa29782afd..c6f384cd6ea 100644 --- a/lib/Target/README.txt +++ b/lib/Target/README.txt @@ -2218,3 +2218,32 @@ llc time when it gets inlined, because we can use smaller transfers. This also avoids partial register stalls in some important cases. //===---------------------------------------------------------------------===// + +Some missed instcombine xforms (from GCC PR14753): + +void bar (void); + +void mask_gt (unsigned int a) { +/* This is equivalent to a > 15. */ +if ((a & ~7) > 8) +bar(); +} + +void neg_eq_cst(unsigned int a) { +if (-a == 123) +bar(); +} + +void minus_cst(unsigned int a) { +if (20 - a == 5) +bar(); +} + +void rotate_cst (unsigned a) { +a = (a << 10) | (a >> 22); +if (a == 123) +bar (); +} + +//===---------------------------------------------------------------------===// +