From: John David Anglin Date: Fri, 9 Jul 2004 21:26:57 +0000 (+0000) Subject: re PR target/16459 (ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_P... X-Git-Tag: releases/gcc-3.3.5~126 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7460343f240858dd6c091efd32c7294f6fa13822;p=thirdparty%2Fgcc.git re PR target/16459 (ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall) PR target/16459 * pa.c (output_indirect_call): Use %r2 as the link register when calling $$dyncall with a pc-relative branch. From-SVN: r84401 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 49c0e83586bc..58350654df1b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-07-09 John David Anglin + + PR target/16459 + * pa.c (output_indirect_call): Use %r2 as the link register when + calling $$dyncall with a pc-relative branch. + 2004-07-07 Andreas Schwab * config/ia64/ia64.md: Define new attribute "empty". diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index df3eebbf0afe..907f0d69432b 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -6932,7 +6932,7 @@ output_indirect_call (insn, call_dest) No need to check target flags as the length uniquely identifies the remaining cases. */ if (attr_length_indirect_call (insn) == 8) - return ".CALL\tARGW0=GR\n\t{bl|b,l} $$dyncall,%%r31\n\tcopy %%r31,%%r2"; + return ".CALL\tARGW0=GR\n\t{bl|b,l} $$dyncall,%%r2\n\tcopy %%r2,%%r31"; /* Long millicode call, but we are not generating PIC or portable runtime code. */