]> pilppa.org Git - familiar-h63xx-build.git/blob - org.handhelds.familiar/packages/gcc/gcc-3.3.3/reverse-compare.patch
OE tree imported from monotone branch org.openembedded.oz354fam083 at revision 8b12e3...
[familiar-h63xx-build.git] / org.handhelds.familiar / packages / gcc / gcc-3.3.3 / reverse-compare.patch
1 --- gcc-3.3.3/gcc/flow.c~       2003-07-30 01:57:24.000000000 +0100
2 +++ gcc-3.3.3/gcc/flow.c        2004-04-23 19:23:43.000000000 +0100
3 @@ -1904,6 +1904,7 @@
4        regset diff = INITIALIZE_REG_SET (diff_head);
5        basic_block bb_true, bb_false;
6        rtx cond_true, cond_false, set_src;
7 +      enum rtx_code reversed_code;
8        int i;
9  
10        /* Identify the successor blocks.  */
11 @@ -1934,7 +1935,11 @@
12        /* Extract the condition from the branch.  */
13        set_src = SET_SRC (pc_set (bb->end));
14        cond_true = XEXP (set_src, 0);
15 -      cond_false = gen_rtx_fmt_ee (reverse_condition (GET_CODE (cond_true)),
16 +      reversed_code = reverse_condition (GET_CODE (cond_true));
17 +      if (reversed_code == UNKNOWN)
18 +       goto skip;
19 +
20 +      cond_false = gen_rtx_fmt_ee (reversed_code,
21                                    GET_MODE (cond_true), XEXP (cond_true, 0),
22                                    XEXP (cond_true, 1));
23        if (GET_CODE (XEXP (set_src, 1)) == PC)
24 @@ -1980,6 +1985,7 @@
25              });
26         }
27  
28 +    skip:
29        FREE_REG_SET (diff);
30      }
31  #endif