From: John David Anglin Date: Tue, 6 Jan 2009 04:00:28 +0000 (+0000) Subject: pa.c (output_call): Relocate non-jump insns in the delay slot of long absolute calls... X-Git-Tag: releases/gcc-4.4.0~1012 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=44b864717ee1da2bb98ef4b459da47361d351ebd;p=thirdparty%2Fgcc.git pa.c (output_call): Relocate non-jump insns in the delay slot of long absolute calls when... * pa.c (output_call): Relocate non-jump insns in the delay slot of long absolute calls when generating PA 2.0 code. From-SVN: r143113 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0fda2b414dc6..f61a382b5f9a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2009-01-05 John David Anglin + + * pa.c (output_call): Relocate non-jump insns in the delay slot of long + absolute calls when generating PA 2.0 code. + 2009-01-05 Vladimir Makarov PR rtl-optimization/38583 diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index 21820869d5c4..960814f65d77 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -7547,7 +7547,9 @@ output_call (rtx insn, rtx call_dest, int sibcall) if (seq_length != 0 && GET_CODE (NEXT_INSN (insn)) != JUMP_INSN && !sibcall - && (!TARGET_PA_20 || indirect_call)) + && (!TARGET_PA_20 + || indirect_call + || ((TARGET_LONG_ABS_CALL || local_call) && !flag_pic))) { /* A non-jump insn in the delay slot. By definition we can emit this insn before the call (and in fact before argument