public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/16459] New: [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall
@ 2004-07-09 19:57 danglin at gcc dot gnu dot org
  2004-07-09 20:12 ` [Bug target/16459] " cvs-commit at gcc dot gnu dot org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: danglin at gcc dot gnu dot org @ 2004-07-09 19:57 UTC (permalink / raw)
  To: gcc-bugs

stage1/xgcc -Bstage1/ -B/home/dave/opt/gnu/gcc/gcc-3.5.0/hppa-linux/bin/   -g -O
2 -mpa-risc-2-0 -fprofile-generate -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-
prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -W
old-style-definition -Werror -fno-common   -DHAVE_CONFIG_H  -o cc1 \
        c-parse.o c-lang.o stub-objc.o attribs.o c-errors.o c-lex.o c-pragma.o c
-decl.o c-typeck.o c-convert.o c-aux-info.o c-common.o c-opts.o c-format.o c-sem
antics.o c-incpath.o cppdefault.o c-ppoutput.o c-cppbuiltin.o prefix.o c-objc-co
mmon.o c-dump.o c-pch.o  c-gimplify.o tree-mudflap.o c-pretty-print.o main.o tre
e-browser.o libbackend.a ../libcpp/libcpp.a ../libcpp/libcpp.a ../libiberty/libi
berty.a   ../libbanshee/points-to/libandersen.a ../libbanshee/engine/libbansheee
ngine.a ../libbanshee/libcompat/libbansheecompat.a
/home/dave/opt/gnu/bin/ld: libbackend.a(expr.o)(.text+0x40c2c): cannot reach 000
006ff_$$dyncall+0, recompile with -ffunction-sections
/home/dave/opt/gnu/bin/ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_
PARISC_PCREL17F for $$dyncall
/home/dave/opt/gnu/bin/ld: final link failed: Bad value
collect2: ld returned 1 exit status
make[2]: *** [cc1] Error 1
make[2]: Leaving directory `/home/dave/gcc-3.5/objdir/gcc'

This is a PA 2.0 problem.  I forgot to change the pc-relative branch used
to call $$dyncall in an indirect call:

   40c2c:       eb e0 00 00     b,l 40c34 <try_casesi+0xd4>,r31
   40c30:       08 1f 02 42     copy r31,rp

PA 2.0 has long pc-relative branches (22 bits versus 17 bits for
PA 1.x) but only when %rp (%r2) is used as the link register.
%rp and %r31 need to be interchanged to get the long branch version.

The regression was introduced when I changed the length attribute.
It is used to select the type of branch to use to call $$dyncall.

Will fix shortly.

-- 
           Summary: [3.3/3.4/3.5 Regression] ld:
                    libbackend.a(expr.o)(.text+0x40c2c): cannot handle
                    R_PARISC_PCREL17F for $$dyncall
           Product: gcc
           Version: 3.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: target
        AssignedTo: danglin at gcc dot gnu dot org
        ReportedBy: danglin at gcc dot gnu dot org
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: hppa-unknown-linux-gnu
  GCC host triplet: hppa-unknown-linux-gnu
GCC target triplet: hppa-unknown-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16459


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug target/16459] [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall
  2004-07-09 19:57 [Bug target/16459] New: [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall danglin at gcc dot gnu dot org
@ 2004-07-09 20:12 ` cvs-commit at gcc dot gnu dot org
  2004-07-09 20:38 ` cvs-commit at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-07-09 20:12 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-07-09 20:12 -------
Subject: Bug 16459

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	danglin@gcc.gnu.org	2004-07-09 20:11:59

Modified files:
	gcc            : ChangeLog 
	gcc/config/pa  : pa.c 

Log message:
	PR target/16459
	* pa.c (output_indirect_call): Use %r2 as the link register when
	calling $$dyncall with a pc-relative branch.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.4426&r2=2.4427
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/pa/pa.c.diff?cvsroot=gcc&r1=1.256&r2=1.257



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16459


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug target/16459] [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall
  2004-07-09 19:57 [Bug target/16459] New: [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall danglin at gcc dot gnu dot org
  2004-07-09 20:12 ` [Bug target/16459] " cvs-commit at gcc dot gnu dot org
@ 2004-07-09 20:38 ` cvs-commit at gcc dot gnu dot org
  2004-07-09 21:27 ` cvs-commit at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-07-09 20:38 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-07-09 20:38 -------
Subject: Bug 16459

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_4-branch
Changes by:	danglin@gcc.gnu.org	2004-07-09 20:38:29

Modified files:
	gcc            : ChangeLog 
	gcc/config/pa  : pa.c 

Log message:
	PR target/16459
	* pa.c (output_indirect_call): Use %r2 as the link register when
	calling $$dyncall with a pc-relative branch.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=2.2326.2.545&r2=2.2326.2.546
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/pa/pa.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.235.4.5&r2=1.235.4.6



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16459


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug target/16459] [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall
  2004-07-09 19:57 [Bug target/16459] New: [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall danglin at gcc dot gnu dot org
  2004-07-09 20:12 ` [Bug target/16459] " cvs-commit at gcc dot gnu dot org
  2004-07-09 20:38 ` cvs-commit at gcc dot gnu dot org
@ 2004-07-09 21:27 ` cvs-commit at gcc dot gnu dot org
  2004-07-09 21:35 ` danglin at gcc dot gnu dot org
  2004-07-09 22:16 ` pinskia at gcc dot gnu dot org
  4 siblings, 0 replies; 6+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-07-09 21:27 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-07-09 21:27 -------
Subject: Bug 16459

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_3-branch
Changes by:	danglin@gcc.gnu.org	2004-07-09 21:27:00

Modified files:
	gcc            : ChangeLog 
	gcc/config/pa  : pa.c 

Log message:
	PR target/16459
	* pa.c (output_indirect_call): Use %r2 as the link register when
	calling $$dyncall with a pc-relative branch.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.16114.2.995&r2=1.16114.2.996
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/pa/pa.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.188.2.13&r2=1.188.2.14



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16459


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug target/16459] [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall
  2004-07-09 19:57 [Bug target/16459] New: [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall danglin at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2004-07-09 21:27 ` cvs-commit at gcc dot gnu dot org
@ 2004-07-09 21:35 ` danglin at gcc dot gnu dot org
  2004-07-09 22:16 ` pinskia at gcc dot gnu dot org
  4 siblings, 0 replies; 6+ messages in thread
From: danglin at gcc dot gnu dot org @ 2004-07-09 21:35 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From danglin at gcc dot gnu dot org  2004-07-09 21:35 -------
Fixed by patch.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16459


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug target/16459] [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall
  2004-07-09 19:57 [Bug target/16459] New: [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall danglin at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2004-07-09 21:35 ` danglin at gcc dot gnu dot org
@ 2004-07-09 22:16 ` pinskia at gcc dot gnu dot org
  4 siblings, 0 replies; 6+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-07-09 22:16 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-code
      Known to work|                            |3.3.5 3.4.2 3.5.0
   Target Milestone|---                         |3.3.5


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16459


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2004-07-09 22:16 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-07-09 19:57 [Bug target/16459] New: [3.3/3.4/3.5 Regression] ld: libbackend.a(expr.o)(.text+0x40c2c): cannot handle R_PARISC_PCREL17F for $$dyncall danglin at gcc dot gnu dot org
2004-07-09 20:12 ` [Bug target/16459] " cvs-commit at gcc dot gnu dot org
2004-07-09 20:38 ` cvs-commit at gcc dot gnu dot org
2004-07-09 21:27 ` cvs-commit at gcc dot gnu dot org
2004-07-09 21:35 ` danglin at gcc dot gnu dot org
2004-07-09 22:16 ` pinskia at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).