summaryrefslogtreecommitdiffstats
path: root/openembedded/packages/gcc/gcc-3.3.4/reverse-compare.patch
diff options
context:
space:
mode:
authorRichard Purdie <richard@openedhand.com>2005-11-16 16:20:35 +0000
committerRichard Purdie <richard@openedhand.com>2005-11-16 16:20:35 +0000
commit1a5f0fedce5084690bb478a302d7dd326198afee (patch)
tree4ee4c487b833e01dd4b82eaf4d6ee13578bfd78b /openembedded/packages/gcc/gcc-3.3.4/reverse-compare.patch
parentf0d9a3840ce349e606f5a6bfcf552c1adcaf2a46 (diff)
downloadpoky-1a5f0fedce5084690bb478a302d7dd326198afee.tar.gz
Add gcc versions 4.0.2, 3.3.4 and 3.4.4
git-svn-id: https://svn.o-hand.com/repos/poky@182 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'openembedded/packages/gcc/gcc-3.3.4/reverse-compare.patch')
-rw-r--r--openembedded/packages/gcc/gcc-3.3.4/reverse-compare.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/openembedded/packages/gcc/gcc-3.3.4/reverse-compare.patch b/openembedded/packages/gcc/gcc-3.3.4/reverse-compare.patch
new file mode 100644
index 0000000000..7b6c1b6425
--- /dev/null
+++ b/openembedded/packages/gcc/gcc-3.3.4/reverse-compare.patch
@@ -0,0 +1,31 @@
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