re PR pch/13689 (GGC PCH breaks aliasing)
PR pch/13689 * alias.c (new_alias_set): Mark last_alias_set for PCH. (get_varargs_alias_set): Rename 'set' to 'varargs_set' and mark it for PCH. (get_frame_alias_set): Likewise, except rename it to 'frame_set'. * config/rs6000/rs6000.c (rs6000_sr_alias_set): Mark for PCH. (get_TOC_alias_set): Mark 'set' for PCH. From-SVN: r76031
This commit is contained in:
parent
19833df131
commit
f103e34d1d
|
@ -1,3 +1,12 @@
|
|||
2004-01-17 Geoffrey Keating <geoffk@apple.com>
|
||||
|
||||
* alias.c (new_alias_set): Mark last_alias_set for PCH.
|
||||
(get_varargs_alias_set): Rename 'set' to 'varargs_set' and mark it
|
||||
for PCH.
|
||||
(get_frame_alias_set): Likewise, except rename it to 'frame_set'.
|
||||
* config/rs6000/rs6000.c (rs6000_sr_alias_set): Mark for PCH.
|
||||
(get_TOC_alias_set): Mark 'set' for PCH.
|
||||
|
||||
2004-01-16 Geoffrey Keating <geoffk@apple.com>
|
||||
|
||||
* cfgrtl.c (try_redirect_by_replacing_jump): Optimize tablejumps
|
||||
|
|
24
gcc/alias.c
24
gcc/alias.c
|
@ -592,11 +592,11 @@ get_alias_set (tree t)
|
|||
|
||||
/* Return a brand-new alias set. */
|
||||
|
||||
static GTY(()) HOST_WIDE_INT last_alias_set;
|
||||
|
||||
HOST_WIDE_INT
|
||||
new_alias_set (void)
|
||||
{
|
||||
static HOST_WIDE_INT last_alias_set;
|
||||
|
||||
if (flag_strict_aliasing)
|
||||
{
|
||||
if (!alias_sets)
|
||||
|
@ -724,29 +724,29 @@ record_component_aliases (tree type)
|
|||
/* Allocate an alias set for use in storing and reading from the varargs
|
||||
spill area. */
|
||||
|
||||
static GTY(()) HOST_WIDE_INT varargs_set = -1;
|
||||
|
||||
HOST_WIDE_INT
|
||||
get_varargs_alias_set (void)
|
||||
{
|
||||
static HOST_WIDE_INT set = -1;
|
||||
if (varargs_set == -1)
|
||||
varargs_set = new_alias_set ();
|
||||
|
||||
if (set == -1)
|
||||
set = new_alias_set ();
|
||||
|
||||
return set;
|
||||
return varargs_set;
|
||||
}
|
||||
|
||||
/* Likewise, but used for the fixed portions of the frame, e.g., register
|
||||
save areas. */
|
||||
|
||||
static GTY(()) HOST_WIDE_INT frame_set = -1;
|
||||
|
||||
HOST_WIDE_INT
|
||||
get_frame_alias_set (void)
|
||||
{
|
||||
static HOST_WIDE_INT set = -1;
|
||||
if (frame_set == -1)
|
||||
frame_set = new_alias_set ();
|
||||
|
||||
if (set == -1)
|
||||
set = new_alias_set ();
|
||||
|
||||
return set;
|
||||
return frame_set;
|
||||
}
|
||||
|
||||
/* Inside SRC, the source of a SET, find a base address. */
|
||||
|
|
|
@ -230,7 +230,7 @@ int toc_initialized;
|
|||
char toc_label_name[10];
|
||||
|
||||
/* Alias set for saves and restores from the rs6000 stack. */
|
||||
static int rs6000_sr_alias_set;
|
||||
static GTY(()) int rs6000_sr_alias_set;
|
||||
|
||||
/* Call distance, overridden by -mlongcall and #pragma longcall(1).
|
||||
The only place that looks at this is rs6000_set_default_type_attributes;
|
||||
|
@ -11106,13 +11106,14 @@ rs6000_emit_eh_reg_restore (rtx source, rtx scratch)
|
|||
emit_move_insn (gen_rtx_REG (Pmode, LINK_REGISTER_REGNUM), operands[0]);
|
||||
}
|
||||
|
||||
static GTY(()) int set = -1;
|
||||
|
||||
int
|
||||
get_TOC_alias_set (void)
|
||||
{
|
||||
static int set = -1;
|
||||
if (set == -1)
|
||||
set = new_alias_set ();
|
||||
return set;
|
||||
if (set == -1)
|
||||
set = new_alias_set ();
|
||||
return set;
|
||||
}
|
||||
|
||||
/* This returns nonzero if the current function uses the TOC. This is
|
||||
|
|
Loading…
Reference in New Issue