[Bug rtl-optimization/28173] [4.0/4.1 regression] misses constant folding

sayle at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Mon Feb 19 00:54:00 GMT 2007



------- Comment #5 from sayle at gcc dot gnu dot org  2007-02-19 00:54 -------
Subject: Bug 28173

Author: sayle
Date: Mon Feb 19 00:54:29 2007
New Revision: 122116

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

        PR rtl-optimization/28173
        * simplify-rtx.c (simplify_binary_operation_1) <IOR>:  Optimize
        (X & C1) | C2 as C2 when (C1 & C2) == C1 and X has no side-effects.
        Optimize (X & C1) | C2 as X | C2 when (C1 | C2) == ~0.
        Canonicalize (X & C1) | C2 as (X & (C1 & ~C2)) | C2.
        <AND>: Canonicalize (X | C1) & C2 as (X & C2) | (C1 & C2).

        * gcc.target/i386/andor-1.c: New test case.


Added:
    trunk/gcc/testsuite/gcc.target/i386/andor-1.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/simplify-rtx.c
    trunk/gcc/testsuite/ChangeLog


-- 


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



More information about the Gcc-bugs mailing list