aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2011-01-17 13:43:37 +0000
committerRainer Orth <ro@gcc.gnu.org>2011-01-17 13:43:37 +0000
commit114ce554bdb49bf797892ed05e89df719bb7635d (patch)
treeac01c3b457929ed704b737c7c909386d6a57f12d /gcc
parent98c6d93c59237dad552956a69fc6b6057b9498a4 (diff)
downloadgcc-114ce554bdb49bf797892ed05e89df719bb7635d.zip
gcc-114ce554bdb49bf797892ed05e89df719bb7635d.tar.gz
gcc-114ce554bdb49bf797892ed05e89df719bb7635d.tar.bz2
sparc.c (sparc_sr_alias_set): Don't define.
* config/sparc/sparc.c (sparc_sr_alias_set): Don't define. (struct_value_alias_set): Don't define. (sparc_option_override): Don't set sparc_sr_alias_set and struct_value_alias_set. (save_or_restore_regs): Use gen_frame_mem rather than calling set_mem_alias_set. (sparc_struct_value_rtx): Likewise. From-SVN: r168901
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog10
-rw-r--r--gcc/config/sparc/sparc.c25
2 files changed, 16 insertions, 19 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 93837b4..2551eba 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,13 @@
+2011-01-17 Ian Lance Taylor <iant@google.com>
+
+ * config/sparc/sparc.c (sparc_sr_alias_set): Don't define.
+ (struct_value_alias_set): Don't define.
+ (sparc_option_override): Don't set sparc_sr_alias_set and
+ struct_value_alias_set.
+ (save_or_restore_regs): Use gen_frame_mem rather than calling
+ set_mem_alias_set.
+ (sparc_struct_value_rtx): Likewise.
+
2011-01-17 H.J. Lu <hongjiu.lu@intel.com>
PR target/47318
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index 62fc328..109aa1b 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -300,12 +300,6 @@ static HOST_WIDE_INT actual_fsize;
saved (as 4-byte quantities). */
static int num_gfregs;
-/* The alias set for prologue/epilogue register save/restore. */
-static GTY(()) alias_set_type sparc_sr_alias_set;
-
-/* The alias set for the structure return value. */
-static GTY(()) alias_set_type struct_value_alias_set;
-
/* Vector to say how input registers are mapped to output registers.
HARD_FRAME_POINTER_REGNUM cannot be remapped by this function to
eliminate it. You must use -fomit-frame-pointer to get that. */
@@ -912,10 +906,6 @@ sparc_option_override (void)
/* Do various machine dependent initializations. */
sparc_init_modes ();
- /* Acquire unique alias sets for our private stuff. */
- sparc_sr_alias_set = new_alias_set ();
- struct_value_alias_set = new_alias_set ();
-
/* Set up function hooks. */
init_machine_status = sparc_init_machine_status;
@@ -4381,8 +4371,7 @@ save_or_restore_regs (int low, int high, rtx base, int offset, int action)
{
if (df_regs_ever_live_p (i) && ! call_used_regs[i])
{
- mem = gen_rtx_MEM (DImode, plus_constant (base, offset));
- set_mem_alias_set (mem, sparc_sr_alias_set);
+ mem = gen_frame_mem (DImode, plus_constant (base, offset));
if (action == SORR_SAVE)
{
insn = emit_move_insn (mem, gen_rtx_REG (DImode, i));
@@ -4422,8 +4411,7 @@ save_or_restore_regs (int low, int high, rtx base, int offset, int action)
else
continue;
- mem = gen_rtx_MEM (mode, plus_constant (base, offset));
- set_mem_alias_set (mem, sparc_sr_alias_set);
+ mem = gen_frame_mem (mode, plus_constant (base, offset));
if (action == SORR_SAVE)
{
insn = emit_move_insn (mem, gen_rtx_REG (mode, regno));
@@ -6087,11 +6075,11 @@ sparc_struct_value_rtx (tree fndecl, int incoming)
rtx mem;
if (incoming)
- mem = gen_rtx_MEM (Pmode, plus_constant (frame_pointer_rtx,
- STRUCT_VALUE_OFFSET));
+ mem = gen_frame_mem (Pmode, plus_constant (frame_pointer_rtx,
+ STRUCT_VALUE_OFFSET));
else
- mem = gen_rtx_MEM (Pmode, plus_constant (stack_pointer_rtx,
- STRUCT_VALUE_OFFSET));
+ mem = gen_frame_mem (Pmode, plus_constant (stack_pointer_rtx,
+ STRUCT_VALUE_OFFSET));
/* Only follow the SPARC ABI for fixed-size structure returns.
Variable size structure returns are handled per the normal
@@ -6133,7 +6121,6 @@ sparc_struct_value_rtx (tree fndecl, int incoming)
emit_label (endlab);
}
- set_mem_alias_set (mem, struct_value_alias_set);
return mem;
}
}