Root/toolchain/gcc/patches/llvm/952-bug_34762.patch

1http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34762
2
3--- a/gcc/reload.c
4+++ b/gcc/reload.c
5@@ -4817,7 +4817,7 @@ find_reloads_address (enum machine_mode
6           find_reloads_address (GET_MODE (tem), &tem, XEXP (tem, 0),
7                     &XEXP (tem, 0), opnum,
8                     ADDR_TYPE (type), ind_levels, insn);
9- if (tem != orig)
10+ if (!rtx_equal_p (tem, orig))
11             push_reg_equiv_alt_mem (regno, tem);
12         }
13           /* We can avoid a reload if the register's equivalent memory
14@@ -5617,7 +5617,7 @@ find_reloads_address_1 (enum machine_mod
15                       RELOAD_OTHER,
16                       ind_levels, insn);
17 
18- if (tem != orig)
19+ if (!rtx_equal_p (tem, orig))
20           push_reg_equiv_alt_mem (regno, tem);
21 
22         /* Then reload the memory location into a base
23@@ -5684,7 +5684,7 @@ find_reloads_address_1 (enum machine_mod
24           find_reloads_address (GET_MODE (tem), &tem, XEXP (tem, 0),
25                     &XEXP (tem, 0), opnum, type,
26                     ind_levels, insn);
27- if (tem != orig)
28+ if (!rtx_equal_p (tem, orig))
29             push_reg_equiv_alt_mem (regno, tem);
30           /* Put this inside a new increment-expression. */
31           x = gen_rtx_fmt_e (GET_CODE (x), GET_MODE (x), tem);
32@@ -5876,7 +5876,7 @@ find_reloads_address_1 (enum machine_mod
33         find_reloads_address (GET_MODE (x), &x, XEXP (x, 0),
34                       &XEXP (x, 0), opnum, ADDR_TYPE (type),
35                       ind_levels, insn);
36- if (x != tem)
37+ if (!rtx_equal_p (x, tem))
38           push_reg_equiv_alt_mem (regno, x);
39           }
40       }
41@@ -6104,7 +6104,7 @@ find_reloads_subreg_address (rtx x, int
42                            XEXP (tem, 0), &XEXP (tem, 0),
43                            opnum, type, ind_levels, insn);
44           /* ??? Do we need to handle nonzero offsets somehow? */
45- if (!offset && tem != orig)
46+ if (!offset && !rtx_equal_p (tem, orig))
47         push_reg_equiv_alt_mem (regno, tem);
48 
49           /* For some processors an address may be valid in the
50

Archive Download this file



interactive