From: John David Anglin Date: Tue, 28 May 2019 23:28:02 +0000 (+0000) Subject: pa.c (hppa_profile_hook): Remove offset adjustment. X-Git-Tag: releases/gcc-9.2.0~298 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bee4cbe6aa07b2afe04cc445d0412edacffe4163;p=thirdparty%2Fgcc.git pa.c (hppa_profile_hook): Remove offset adjustment. * config/pa/pa.c (hppa_profile_hook): Remove offset adjustment. From-SVN: r271721 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f23632b548e4..324072a1b087 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2019-05-28 John David Anglin + + * config/pa/pa.c (hppa_profile_hook): Remove offset adjustment. + 2019-05-27 Eric Botcazou * dwarf2out.c (resolve_args_picking_1): Deal with DW_OP_GNU_addr_index diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index 95b7a5857db8..54d5b127fc4b 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -4569,10 +4569,6 @@ output_deferred_profile_counters (void) void hppa_profile_hook (int label_no) { - /* We use SImode for the address of the function in both 32 and - 64-bit code to avoid having to provide DImode versions of the - lcla2 and load_offset_label_address insn patterns. */ - rtx reg = gen_reg_rtx (SImode); rtx_code_label *label_rtx = gen_label_rtx (); int reg_parm_stack_space = REG_PARM_STACK_SPACE (NULL_TREE); rtx arg_bytes, begin_label_rtx, mcount, sym; @@ -4604,18 +4600,13 @@ hppa_profile_hook (int label_no) if (!use_mcount_pcrel_call) { /* The address of the function is loaded into %r25 with an instruction- - relative sequence that avoids the use of relocations. The sequence - is split so that the load_offset_label_address instruction can - occupy the delay slot of the call to _mcount. */ + relative sequence that avoids the use of relocations. We use SImode + for the address of the function in both 32 and 64-bit code to avoid + having to provide DImode versions of the lcla2 pattern. */ if (TARGET_PA_20) - emit_insn (gen_lcla2 (reg, label_rtx)); + emit_insn (gen_lcla2 (gen_rtx_REG (SImode, 25), label_rtx)); else - emit_insn (gen_lcla1 (reg, label_rtx)); - - emit_insn (gen_load_offset_label_address (gen_rtx_REG (SImode, 25), - reg, - begin_label_rtx, - label_rtx)); + emit_insn (gen_lcla1 (gen_rtx_REG (SImode, 25), label_rtx)); } if (!NO_DEFERRED_PROFILE_COUNTERS)