diff options
author | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | 2004-07-09 20:11:59 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2004-07-09 20:11:59 +0000 |
commit | 605201baf919a11f7914c8817fd2a756ee4fe13a (patch) | |
tree | b983114b385f73b3651cd26a7c3c9735d89d79b6 | |
parent | b984b4bfa5a88cfc5bd05ad969287d6256f88a3e (diff) | |
download | gcc-605201baf919a11f7914c8817fd2a756ee4fe13a.zip gcc-605201baf919a11f7914c8817fd2a756ee4fe13a.tar.gz gcc-605201baf919a11f7914c8817fd2a756ee4fe13a.tar.bz2 |
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: r84394
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/pa/pa.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a34758c..4fbf790 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-07-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + PR target/16459 + * pa.c (output_indirect_call): Use %r2 as the link register when + calling $$dyncall with a pc-relative branch. + 2004-07-08 Gerald Pfeifer <gerald@pfeifer.com> * doc/install.texi (Binaries): Mention OpenPKG. diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index cf7da9c..da065ce 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -7545,7 +7545,7 @@ output_indirect_call (rtx insn, rtx 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. */ |