1 Upstream-Status: Inappropriate [Backport]
2 From 14fb9260e8c94249305dba567e7e242ac3d30fa7 Mon Sep 17 00:00:00 2001
3 From: uros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
4 Date: Tue, 29 Mar 2011 18:24:02 +0000
5 Subject: [PATCH 037/200] * config/alpha/alpha.c (alpha_sr_alias_set): Don't define.
6 (alpha_option_override): Don't set alpha_sr_alias_set.
7 (emit_frame_store_1): Use gen_frame_mem rather than calling
9 (alpha_expand_epilogue): Ditto.
10 (unicosmk_gen_dsib): Ditto.
12 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_6-branch@171686 138bc75d-0d04-0410-961f-82ee72b054a4
14 index c1036b4..3da7fa0 100644
15 index 76ab31a..b41404e 100644
16 --- a/gcc/config/alpha/alpha.c
17 +++ b/gcc/config/alpha/alpha.c
18 @@ -94,10 +94,6 @@ int alpha_memory_latency = 3;
20 static int alpha_function_needs_gp;
22 -/* The alias set for prologue/epilogue register save/restore. */
24 -static GTY(()) alias_set_type alpha_sr_alias_set;
26 /* The assembler name of the current function. */
28 static const char *alpha_fnname;
29 @@ -510,9 +506,6 @@ alpha_option_override (void)
30 if (align_functions <= 0)
33 - /* Acquire a unique set number for our register saves and restores. */
34 - alpha_sr_alias_set = new_alias_set ();
36 /* Register variables and functions with the garbage collector. */
38 /* Set up function hooks. */
39 @@ -7715,8 +7708,7 @@ emit_frame_store_1 (rtx value, rtx base_reg, HOST_WIDE_INT frame_bias,
42 addr = plus_constant (base_reg, base_ofs);
43 - mem = gen_rtx_MEM (DImode, addr);
44 - set_mem_alias_set (mem, alpha_sr_alias_set);
45 + mem = gen_frame_mem (DImode, addr);
47 insn = emit_move_insn (mem, value);
48 RTX_FRAME_RELATED_P (insn) = 1;
49 @@ -8391,9 +8383,7 @@ alpha_expand_epilogue (void)
51 /* Restore registers in order, excepting a true frame pointer. */
53 - mem = gen_rtx_MEM (DImode, plus_constant (sa_reg, reg_offset));
55 - set_mem_alias_set (mem, alpha_sr_alias_set);
56 + mem = gen_frame_mem (DImode, plus_constant (sa_reg, reg_offset));
57 reg = gen_rtx_REG (DImode, REG_RA);
58 emit_move_insn (reg, mem);
59 cfa_restores = alloc_reg_note (REG_CFA_RESTORE, reg, cfa_restores);
60 @@ -8408,8 +8398,8 @@ alpha_expand_epilogue (void)
61 fp_offset = reg_offset;
64 - mem = gen_rtx_MEM (DImode, plus_constant(sa_reg, reg_offset));
65 - set_mem_alias_set (mem, alpha_sr_alias_set);
66 + mem = gen_frame_mem (DImode,
67 + plus_constant (sa_reg, reg_offset));
68 reg = gen_rtx_REG (DImode, i);
69 emit_move_insn (reg, mem);
70 cfa_restores = alloc_reg_note (REG_CFA_RESTORE, reg,
71 @@ -8421,8 +8411,7 @@ alpha_expand_epilogue (void)
72 for (i = 0; i < 31; ++i)
73 if (fmask & (1UL << i))
75 - mem = gen_rtx_MEM (DFmode, plus_constant(sa_reg, reg_offset));
76 - set_mem_alias_set (mem, alpha_sr_alias_set);
77 + mem = gen_frame_mem (DFmode, plus_constant (sa_reg, reg_offset));
78 reg = gen_rtx_REG (DFmode, i+32);
79 emit_move_insn (reg, mem);
80 cfa_restores = alloc_reg_note (REG_CFA_RESTORE, reg, cfa_restores);
81 @@ -8438,9 +8427,9 @@ alpha_expand_epilogue (void)
82 for (i = 9; i < 15; i++)
83 if (imask & (1UL << i))
85 - mem = gen_rtx_MEM (DImode, plus_constant(hard_frame_pointer_rtx,
87 - set_mem_alias_set (mem, alpha_sr_alias_set);
88 + mem = gen_frame_mem (DImode,
89 + plus_constant (hard_frame_pointer_rtx,
91 reg = gen_rtx_REG (DImode, i);
92 emit_move_insn (reg, mem);
93 cfa_restores = alloc_reg_note (REG_CFA_RESTORE, reg, cfa_restores);
94 @@ -8450,9 +8439,9 @@ alpha_expand_epilogue (void)
95 for (i = 2; i < 10; i++)
96 if (fmask & (1UL << i))
98 - mem = gen_rtx_MEM (DFmode, plus_constant(hard_frame_pointer_rtx,
100 - set_mem_alias_set (mem, alpha_sr_alias_set);
101 + mem = gen_frame_mem (DFmode,
102 + plus_constant (hard_frame_pointer_rtx,
104 reg = gen_rtx_REG (DFmode, i+32);
105 emit_move_insn (reg, mem);
106 cfa_restores = alloc_reg_note (REG_CFA_RESTORE, reg, cfa_restores);
107 @@ -8460,8 +8449,7 @@ alpha_expand_epilogue (void)
110 /* Restore the return address from the DSIB. */
111 - mem = gen_rtx_MEM (DImode, plus_constant (hard_frame_pointer_rtx, -8));
112 - set_mem_alias_set (mem, alpha_sr_alias_set);
113 + mem = gen_frame_mem (DImode, plus_constant (hard_frame_pointer_rtx, -8));
114 reg = gen_rtx_REG (DImode, REG_RA);
115 emit_move_insn (reg, mem);
116 cfa_restores = alloc_reg_note (REG_CFA_RESTORE, reg, cfa_restores);
117 @@ -8524,9 +8512,8 @@ alpha_expand_epilogue (void)
118 if (TARGET_ABI_UNICOSMK)
120 emit_insn (gen_blockage ());
121 - mem = gen_rtx_MEM (DImode,
122 - plus_constant (hard_frame_pointer_rtx, -16));
123 - set_mem_alias_set (mem, alpha_sr_alias_set);
124 + mem = gen_frame_mem (DImode,
125 + plus_constant (hard_frame_pointer_rtx, -16));
126 emit_move_insn (hard_frame_pointer_rtx, mem);
127 cfa_restores = alloc_reg_note (REG_CFA_RESTORE,
128 hard_frame_pointer_rtx, cfa_restores);
129 @@ -8534,8 +8521,7 @@ alpha_expand_epilogue (void)
130 else if (fp_is_frame_pointer)
132 emit_insn (gen_blockage ());
133 - mem = gen_rtx_MEM (DImode, plus_constant (sa_reg, fp_offset));
134 - set_mem_alias_set (mem, alpha_sr_alias_set);
135 + mem = gen_frame_mem (DImode, plus_constant (sa_reg, fp_offset));
136 emit_move_insn (hard_frame_pointer_rtx, mem);
137 cfa_restores = alloc_reg_note (REG_CFA_RESTORE,
138 hard_frame_pointer_rtx, cfa_restores);
139 @@ -10515,15 +10501,13 @@ unicosmk_gen_dsib (unsigned long *imaskP)
141 /* Save the return address. */
143 - mem = gen_rtx_MEM (DImode, plus_constant (stack_pointer_rtx, 56));
144 - set_mem_alias_set (mem, alpha_sr_alias_set);
145 + mem = gen_frame_mem (DImode, plus_constant (stack_pointer_rtx, 56));
146 FRP (emit_move_insn (mem, gen_rtx_REG (DImode, REG_RA)));
147 (*imaskP) &= ~(1UL << REG_RA);
149 /* Save the old frame pointer. */
151 - mem = gen_rtx_MEM (DImode, plus_constant (stack_pointer_rtx, 48));
152 - set_mem_alias_set (mem, alpha_sr_alias_set);
153 + mem = gen_frame_mem (DImode, plus_constant (stack_pointer_rtx, 48));
154 FRP (emit_move_insn (mem, hard_frame_pointer_rtx));
155 (*imaskP) &= ~(1UL << HARD_FRAME_POINTER_REGNUM);
157 @@ -10532,8 +10516,7 @@ unicosmk_gen_dsib (unsigned long *imaskP)
158 /* Store the SSIB pointer. */
160 ssib_name = ggc_strdup (unicosmk_ssib_name ());
161 - mem = gen_rtx_MEM (DImode, plus_constant (stack_pointer_rtx, 32));
162 - set_mem_alias_set (mem, alpha_sr_alias_set);
163 + mem = gen_frame_mem (DImode, plus_constant (stack_pointer_rtx, 32));
165 FRP (emit_move_insn (gen_rtx_REG (DImode, 5),
166 gen_rtx_SYMBOL_REF (Pmode, ssib_name)));
167 @@ -10541,8 +10524,7 @@ unicosmk_gen_dsib (unsigned long *imaskP)
169 /* Save the CIW index. */
171 - mem = gen_rtx_MEM (DImode, plus_constant (stack_pointer_rtx, 24));
172 - set_mem_alias_set (mem, alpha_sr_alias_set);
173 + mem = gen_frame_mem (DImode, plus_constant (stack_pointer_rtx, 24));
174 FRP (emit_move_insn (mem, gen_rtx_REG (DImode, 25)));
176 emit_insn (gen_blockage ());