aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2003-04-17 04:24:04 -0700
committerRichard Henderson <rth@gcc.gnu.org>2003-04-17 04:24:04 -0700
commitf2dd0c4231f7efddc1c485847b661f7ccee085b8 (patch)
treec6441d0d1295e0d196dbc1aecea2c19b7c5dd826 /gcc/config
parent50d1ff6afc9de67ccea71a481d57d4a6b88befa6 (diff)
downloadgcc-f2dd0c4231f7efddc1c485847b661f7ccee085b8.zip
gcc-f2dd0c4231f7efddc1c485847b661f7ccee085b8.tar.gz
gcc-f2dd0c4231f7efddc1c485847b661f7ccee085b8.tar.bz2
xtensa.c (xtensa_encode_section_info): Remove.
* config/xtensa/xtensa.c (xtensa_encode_section_info): Remove. (call_insn_operand): Use SYMBOL_REF_LOCAL_P. * config/xtensa/xtensa.md (call, call_value): Likewise. From-SVN: r65739
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/xtensa/xtensa.c19
-rw-r--r--gcc/config/xtensa/xtensa.md4
2 files changed, 4 insertions, 19 deletions
diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
index f254628..5e7835d 100644
--- a/gcc/config/xtensa/xtensa.c
+++ b/gcc/config/xtensa/xtensa.c
@@ -203,7 +203,6 @@ static unsigned int xtensa_multibss_section_type_flags
PARAMS ((tree, const char *, int));
static void xtensa_select_rtx_section
PARAMS ((enum machine_mode, rtx, unsigned HOST_WIDE_INT));
-static void xtensa_encode_section_info PARAMS ((tree, int));
static bool xtensa_rtx_costs PARAMS ((rtx, int, int, int *));
static rtx frame_size_const;
@@ -238,8 +237,6 @@ static const int reg_nonleaf_alloc_order[FIRST_PSEUDO_REGISTER] =
#undef TARGET_ASM_SELECT_RTX_SECTION
#define TARGET_ASM_SELECT_RTX_SECTION xtensa_select_rtx_section
-#undef TARGET_ENCODE_SECTION_INFO
-#define TARGET_ENCODE_SECTION_INFO xtensa_encode_section_info
#undef TARGET_RTX_COSTS
#define TARGET_RTX_COSTS xtensa_rtx_costs
@@ -596,8 +593,8 @@ call_insn_operand (op, mode)
if (CONSTANT_ADDRESS_P (op))
{
/* Direct calls only allowed to static functions with PIC. */
- return (!flag_pic || (GET_CODE (op) == SYMBOL_REF
- && SYMBOL_REF_FLAG (op)));
+ return (!flag_pic
+ || (GET_CODE (op) == SYMBOL_REF && SYMBOL_REF_LOCAL_P (op)));
}
return FALSE;
@@ -2833,18 +2830,6 @@ xtensa_select_rtx_section (mode, x, align)
function_section (current_function_decl);
}
-/* If we are referencing a function that is static, make the SYMBOL_REF
- special so that we can generate direct calls to it even with -fpic. */
-
-static void
-xtensa_encode_section_info (decl, first)
- tree decl;
- int first ATTRIBUTE_UNUSED;
-{
- if (TREE_CODE (decl) == FUNCTION_DECL && ! TREE_PUBLIC (decl))
- SYMBOL_REF_FLAG (XEXP (DECL_RTL (decl), 0)) = 1;
-}
-
/* Compute a (partial) cost for rtx X. Return true if the complete
cost has been computed, and false if subexpressions should be
scanned. In either case, *TOTAL contains the cost result. */
diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md
index cc722b9..7a39cab 100644
--- a/gcc/config/xtensa/xtensa.md
+++ b/gcc/config/xtensa/xtensa.md
@@ -2291,7 +2291,7 @@
"
{
rtx addr = XEXP (operands[0], 0);
- if (flag_pic && GET_CODE (addr) == SYMBOL_REF && !SYMBOL_REF_FLAG (addr))
+ if (flag_pic && GET_CODE (addr) == SYMBOL_REF && !SYMBOL_REF_LOCAL_P (addr))
addr = gen_sym_PLT (addr);
if (!call_insn_operand (addr, VOIDmode))
XEXP (operands[0], 0) = copy_to_mode_reg (Pmode, addr);
@@ -2316,7 +2316,7 @@
"
{
rtx addr = XEXP (operands[1], 0);
- if (flag_pic && GET_CODE (addr) == SYMBOL_REF && !SYMBOL_REF_FLAG (addr))
+ if (flag_pic && GET_CODE (addr) == SYMBOL_REF && !SYMBOL_REF_LOCAL_P (addr))
addr = gen_sym_PLT (addr);
if (!call_insn_operand (addr, VOIDmode))
XEXP (operands[1], 0) = copy_to_mode_reg (Pmode, addr);