mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-31 02:34:44 +08:00
cris.c (cris_target_asm_function_prologue): Revert 2002-03-12 internal visibility change.
* config/cris/cris.c (cris_target_asm_function_prologue): Revert 2002-03-12 internal visibility change. (cris_encode_section_info): Consider MODULE_LOCAL_P when encoding visibility into SYMBOL_REF_FLAG. From-SVN: r50735
This commit is contained in:
parent
c0a3eeacda
commit
2a15f5e1e2
@ -1,3 +1,10 @@
|
||||
2002-03-13 Hans-Peter Nilsson <hp@axis.com>
|
||||
|
||||
* config/cris/cris.c (cris_target_asm_function_prologue): Revert
|
||||
2002-03-12 internal visibility change.
|
||||
(cris_encode_section_info): Consider MODULE_LOCAL_P when encoding
|
||||
visibility into SYMBOL_REF_FLAG.
|
||||
|
||||
2002-03-13 Ulrich Weigand <uweigand@de.ibm.com>
|
||||
|
||||
* expr.c (expand_expr, case NE_EXPR): Do not call copy_to_reg with
|
||||
|
@ -857,19 +857,11 @@ cris_target_asm_function_prologue (file, size)
|
||||
framesize += size + cfoa_size;
|
||||
}
|
||||
|
||||
/* Set up the PIC register. Not needed for a function marked with
|
||||
visibility "internal". */
|
||||
/* Set up the PIC register. */
|
||||
if (current_function_uses_pic_offset_table)
|
||||
{
|
||||
tree vis = lookup_attribute ("visibility", DECL_ATTRIBUTES (cfun->decl));
|
||||
|
||||
if (!vis
|
||||
|| strcmp ("internal",
|
||||
TREE_STRING_POINTER (TREE_VALUE (TREE_VALUE (vis)))))
|
||||
asm_fprintf (file, "\tmove.d $pc,$%s\n\tsub.d .:GOTOFF,$%s\n",
|
||||
reg_names[PIC_OFFSET_TABLE_REGNUM],
|
||||
reg_names[PIC_OFFSET_TABLE_REGNUM]);
|
||||
}
|
||||
asm_fprintf (file, "\tmove.d $pc,$%s\n\tsub.d .:GOTOFF,$%s\n",
|
||||
reg_names[PIC_OFFSET_TABLE_REGNUM],
|
||||
reg_names[PIC_OFFSET_TABLE_REGNUM]);
|
||||
|
||||
if (TARGET_PDEBUG)
|
||||
fprintf (file,
|
||||
@ -3054,11 +3046,13 @@ cris_encode_section_info (exp, first)
|
||||
if (DECL_P (exp))
|
||||
{
|
||||
if (TREE_CODE (exp) == FUNCTION_DECL
|
||||
&& (TREE_PUBLIC (exp) || DECL_WEAK (exp)))
|
||||
&& (TREE_PUBLIC (exp) || DECL_WEAK (exp))
|
||||
&& ! MODULE_LOCAL_P (exp))
|
||||
SYMBOL_REF_FLAG (XEXP (DECL_RTL (exp), 0)) = 0;
|
||||
else
|
||||
SYMBOL_REF_FLAG (XEXP (DECL_RTL (exp), 0))
|
||||
= ! TREE_PUBLIC (exp) && ! DECL_WEAK (exp);
|
||||
= ((! TREE_PUBLIC (exp) && ! DECL_WEAK (exp))
|
||||
|| MODULE_LOCAL_P (exp));
|
||||
}
|
||||
else
|
||||
/* Others are local entities. */
|
||||
|
Loading…
Reference in New Issue
Block a user