diff -r b150d6f590fc -r d3e603e7c17c patches/gcc/3.4.6/700-pr15068-fix.patch --- a/patches/gcc/3.4.6/700-pr15068-fix.patch Mon Jul 28 21:08:01 2008 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -diff -durN gcc-3.4.6.orig/gcc/flow.c gcc-3.4.6/gcc/flow.c ---- gcc-3.4.6.orig/gcc/flow.c 2005-09-01 22:51:09.000000000 +0200 -+++ gcc-3.4.6/gcc/flow.c 2007-08-15 23:00:30.000000000 +0200 -@@ -1884,6 +1884,7 @@ - rtx set_src = SET_SRC (pc_set (BB_END (bb))); - rtx cond_true = XEXP (set_src, 0); - rtx reg = XEXP (cond_true, 0); -+ enum rtx_code inv_cond; - - if (GET_CODE (reg) == SUBREG) - reg = SUBREG_REG (reg); -@@ -1892,11 +1893,13 @@ - in the form of a comparison of a register against zero. - If the condition is more complex than that, then it is safe - not to record any information. */ -- if (GET_CODE (reg) == REG -+ inv_cond = reversed_comparison_code (cond_true, BB_END (bb)); -+ if (inv_cond != UNKNOWN -+ && GET_CODE (reg) == REG - && XEXP (cond_true, 1) == const0_rtx) - { - rtx cond_false -- = gen_rtx_fmt_ee (reverse_condition (GET_CODE (cond_true)), -+ = gen_rtx_fmt_ee (inv_cond, - GET_MODE (cond_true), XEXP (cond_true, 0), - XEXP (cond_true, 1)); - if (GET_CODE (XEXP (set_src, 1)) == PC)