summaryrefslogtreecommitdiff
path: root/packages/gcc/gcc-4.1.1/cse.patch
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
committerDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
commit709c4d66e0b107ca606941b988bad717c0b45d9b (patch)
tree37ee08b1eb308f3b2b6426d5793545c38396b838 /packages/gcc/gcc-4.1.1/cse.patch
parentfa6cd5a3b993f16c27de4ff82b42684516d433ba (diff)
rename packages/ to recipes/ per earlier agreement
See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko <denis@denix.org> Acked-by: Mike Westerhof <mwester@dls.net> Acked-by: Philip Balister <philip@balister.org> Acked-by: Khem Raj <raj.khem@gmail.com> Acked-by: Marcin Juszkiewicz <hrw@openembedded.org> Acked-by: Koen Kooi <koen@openembedded.org> Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'packages/gcc/gcc-4.1.1/cse.patch')
-rw-r--r--packages/gcc/gcc-4.1.1/cse.patch75
1 files changed, 0 insertions, 75 deletions
diff --git a/packages/gcc/gcc-4.1.1/cse.patch b/packages/gcc/gcc-4.1.1/cse.patch
deleted file mode 100644
index 88b22c714f..0000000000
--- a/packages/gcc/gcc-4.1.1/cse.patch
+++ /dev/null
@@ -1,75 +0,0 @@
--- gcc-4_1-branch/gcc/cse.c 2006/07/20 14:20:26 115619
-+++ gcc-4_1-branch/gcc/cse.c 2006/07/20 15:07:25 115620
-@@ -4697,6 +4697,8 @@
- unsigned src_const_hash;
- /* Table entry for constant equivalent for SET_SRC, if any. */
- struct table_elt *src_const_elt;
-+ /* Table entry for the destination address. */
-+ struct table_elt *dest_addr_elt;
- };
-
- static void
-@@ -5936,6 +5938,40 @@
- so that the destination goes into that class. */
- sets[i].src_elt = src_eqv_elt;
-
-+ /* Record destination addresses in the hash table. This allows us to
-+ check if they are invalidated by other sets. */
-+ for (i = 0; i < n_sets; i++)
-+ {
-+ if (sets[i].rtl)
-+ {
-+ rtx x = sets[i].inner_dest;
-+ struct table_elt *elt;
-+ enum machine_mode mode;
-+ unsigned hash;
-+
-+ if (MEM_P (x))
-+ {
-+ x = XEXP (x, 0);
-+ mode = GET_MODE (x);
-+ hash = HASH (x, mode);
-+ elt = lookup (x, hash, mode);
-+ if (!elt)
-+ {
-+ if (insert_regs (x, NULL, 0))
-+ {
-+ rehash_using_reg (x);
-+ hash = HASH (x, mode);
-+ }
-+ elt = insert (x, NULL, hash, mode);
-+ }
-+
-+ sets[i].dest_addr_elt = elt;
-+ }
-+ else
-+ sets[i].dest_addr_elt = NULL;
-+ }
-+ }
-+
- invalidate_from_clobbers (x);
-
- /* Some registers are invalidated by subroutine calls. Memory is
-@@ -6028,12 +6064,20 @@
- }
-
- /* We may have just removed some of the src_elt's from the hash table.
-- So replace each one with the current head of the same class. */
-+ So replace each one with the current head of the same class.
-+ Also check if destination addresses have been removed. */
-
- for (i = 0; i < n_sets; i++)
- if (sets[i].rtl)
- {
-- if (sets[i].src_elt && sets[i].src_elt->first_same_value == 0)
-+ if (sets[i].dest_addr_elt
-+ && sets[i].dest_addr_elt->first_same_value == 0)
-+ {
-+ /* The elt was removed, which means this destination s not
-+ valid after this instruction. */
-+ sets[i].rtl = NULL_RTX;
-+ }
-+ else if (sets[i].src_elt && sets[i].src_elt->first_same_value == 0)
- /* If elt was removed, find current head of same class,
- or 0 if nothing remains of that class. */
- {