[Bug rtl-optimization/25600] unsigned>>31?-1:0 should be optimized to int>>31

sayle at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sat Feb 18 05:22:00 GMT 2006



------- Comment #2 from sayle at gcc dot gnu dot org  2006-02-18 05:22 -------
Subject: Bug 25600

Author: sayle
Date: Sat Feb 18 05:22:46 2006
New Revision: 111226

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=111226
Log:

        PR middle-end/25600
        * fold-const.c (fold_binary): Fold (X >> C) != 0 into X < 0 when
        C is one less than the width of X (and related transformations).
        * simplify_rtx.c (simplify_unary_operation_1): Transform 
        (neg (lt x 0)) into either (ashiftrt X C) or (lshiftrt X C)
        depending on STORE_FLAG_VALUE, were C is one less then the
        width of X.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/fold-const.c
    trunk/gcc/simplify-rtx.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25600



More information about the Gcc-bugs mailing list