From: John David Anglin Date: Sat, 10 Feb 2018 23:38:37 +0000 (+0000) Subject: pa.c (hppa_profile_hook): Mark SYMBOL_REF for _mcount as function label. X-Git-Tag: releases/gcc-6.5.0~534 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=02129b54376bc8e0f7d45c3e69129d3e02580de0;p=thirdparty%2Fgcc.git pa.c (hppa_profile_hook): Mark SYMBOL_REF for _mcount as function label. * config/pa/pa.c (hppa_profile_hook): Mark SYMBOL_REF for _mcount as function label. From-SVN: r257556 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 50e4dfa0851d..f7a9ecef0ad3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ 2018-02-10 John David Anglin + * config/pa/pa.c (hppa_profile_hook): Mark SYMBOL_REF for _mcount as + function label. + Backport from mainline 2018-02-01 Aldy Hernandez diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index b4f7a7113ff4..2ac2025e89d9 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -4565,13 +4565,17 @@ hppa_profile_hook (int label_no) lcla2 and load_offset_label_address insn patterns. */ rtx reg = gen_reg_rtx (SImode); rtx_code_label *label_rtx = gen_label_rtx (); - rtx mcount = gen_rtx_MEM (Pmode, gen_rtx_SYMBOL_REF (Pmode, "_mcount")); int reg_parm_stack_space = REG_PARM_STACK_SPACE (NULL_TREE); - rtx arg_bytes, begin_label_rtx; + rtx arg_bytes, begin_label_rtx, mcount, sym; rtx_insn *call_insn; char begin_label_name[16]; bool use_mcount_pcrel_call; + /* Set up call destination. */ + sym = gen_rtx_SYMBOL_REF (Pmode, "_mcount"); + pa_encode_label (sym); + mcount = gen_rtx_MEM (Pmode, sym); + /* If we can reach _mcount with a pc-relative call, we can optimize loading the address of the current function. This requires linker long branch stub support. */