------- Comment #4 from rguenth at gcc dot gnu dot org  2007-12-04 20:29 -------
We endlessly recurse folding

Breakpoint 3, fold_binary (code=BIT_IOR_EXPR, type=0xb7c9a2d8, op0=0xb700a2ac, 
    op1=0xb7d142f4) at /home/richard/src/trunk/gcc/fold-const.c:9397
9397      enum tree_code_class kind = TREE_CODE_CLASS (code);
color_rgb << 8 & 65535
255

very likely caused by 

2007-12-03  Jakub Jelinek  <[EMAIL PROTECTED]>

        PR middle-end/29749
        * fold-const.c (fold_binary) <case BIT_AND_EXPR>: Optimize
        (X << C1) & C2 into (X << C1) & (C2 | ((1 << C1) - 1))
        and (X >> C1) & C2 into (X >> C1) & (C2 | ~((type) -1 >> C1)).
        (fold_binary) <case LSHIFT_EXPR, case RSHIFT_EXPR>: Optimize
        (X & C2) << C1 into (X << C1) & (C2 << C1) and
        (X & C2) >> C1 into (X >> C1) & (C2 >> C1) if that allows further
        optimizations.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu dot org
OtherBugsDependingO|                            |29749
              nThis|                            |


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

Reply via email to