This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Raise the test bar for hppa64-hpux and hppa-linux
- From: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- To: hjl at lucon dot org (H. J. Lu)
- Cc: binutils at sources dot redhat dot com, drepper at redhat dot com
- Date: Sun, 28 Jul 2002 19:04:13 -0400 (EDT)
- Subject: Raise the test bar for hppa64-hpux and hppa-linux
> Check out ld/testsuite/ld-elfweak/elfweak.exp. There are 12 expected
> failures. I can work on a patch. But we have to fix glibc first:
We aren't running many elf tests under hppa64-hpux and hppa-linux. The
enclosed patch enables running these tests and fixes the tests in ld-discard
for hppa.
There are still many fails to resolve in running these tests. For
example, we use crtend.o in tests with shared links. Under hppa-linux,
this file is not compiled with "-fPIC". I can see in the gcc source
some evidence that this file is compiled with "-fPIC" on some systems.
However, we now have crtbeginS.o for shared links. Don't see any
support for this in configure.host or in any linker scripts.
Under hppa-linux, there are a bunch of fails like:
/home/dave/binutils-2.12.90/objdir/ld/ld-new -o tmpdir/shnp.so -shared tmpdir/
sh1np.o tmpdir/sh2np.o
/home/dave/binutils-2.12.90/objdir/ld/ld-new: tmpdir/sh1np.o: relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
tmpdir/sh1np.o: could not read symbols: Bad value
FAIL: shared (non PIC)
Should I XFAIL these as I think "shared (non PIC)" is a not possible on pa.
I also see a bunch a number fails similar to:
diff tmpdir/shmpp.out /home/dave/binutils-2.12.90/src/ld/testsuite/ld-shared/sha
red.dat
12,15c12,15
< shlib_checkfunptr1 (shlib_shlibvar1) == 0
< shlib_checkfunptr2 (main_called) == 0
< shlib_getfunptr1 () != shlib_shlibvar1
< shlib_getfunptr2 () != main_called
---
> shlib_checkfunptr1 (shlib_shlibvar1) == 1
> shlib_checkfunptr2 (main_called) == 1
> shlib_getfunptr1 () == shlib_shlibvar1
> shlib_getfunptr2 () == main_called
child process exited abnormally
FAIL: shared (PIC main)
Please install if ok.
Dave
--
J. David Anglin dave.anglin@nrc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)
2002-07-28 John David Anglin <dave@hiauly1.hia.nrc.ca>
* ld-discard/discard.exp, ld-scripts/phdrs.exp, ld-scripts/phdrs2.exp,
ld-selective/sel-dump.exp: Test hppa*64*-*-hpux* target.
* ld-elfvers/vers.exp, ld-elfvsb/elfvsb.exp, ld-elfweak/elfweak.exp,
ld-linkonce/linkonce.exp, ld-shared/shared.exp,
ld-undefined/weak-undef.exp: Test hppa*64*-*-hpux* and hppa*-*-linux*
targets.
* ld-discard/exit.s, ld-discard/extern.s, ld-discard/start.s,
ld-discard/static.s: Add whitespace before assembler directives.
Index: ld-discard/discard.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-discard/discard.exp,v
retrieving revision 1.1
diff -u -3 -p -r1.1 discard.exp
--- ld-discard/discard.exp 10 Nov 2001 01:17:57 -0000 1.1
+++ ld-discard/discard.exp 28 Jul 2002 18:53:16 -0000
@@ -22,7 +22,10 @@
# Test for ELF here, so we don't have to qualify on ELF specifically
# in every .d-file.
-if { ![istarget *-*-linux*] && ![istarget *-*-gnu] && ![istarget *-*-elf] } {
+if { ![istarget *-*-linux*] \
+ && ![istarget *-*-gnu] \
+ && ![istarget hppa*64*-*-hpux*] \
+ && ![istarget *-*-elf] } {
return
}
Index: ld-discard/exit.s
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-discard/exit.s,v
retrieving revision 1.1
diff -u -3 -p -r1.1 exit.s
--- ld-discard/exit.s 10 Nov 2001 01:17:57 -0000 1.1
+++ ld-discard/exit.s 28 Jul 2002 18:53:16 -0000
@@ -1,6 +1,6 @@
-.globl data
+ .globl data
.section .data.exit,"aw"
data:
-.globl text
+ .globl text
.section .text.exit,"aw"
text:
Index: ld-discard/extern.s
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-discard/extern.s,v
retrieving revision 1.1
diff -u -3 -p -r1.1 extern.s
--- ld-discard/extern.s 10 Nov 2001 01:17:57 -0000 1.1
+++ ld-discard/extern.s 28 Jul 2002 18:53:16 -0000
@@ -1,11 +1,11 @@
-.globl data
+ .globl data
.section .data.exit,"aw"
data:
-.globl text
+ .globl text
.section .text.exit,"aw"
text:
-.text
-.globl _start
+ .text
+ .globl _start
_start:
.long data
.section .debug_info
Index: ld-discard/start.s
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-discard/start.s,v
retrieving revision 1.1
diff -u -3 -p -r1.1 start.s
--- ld-discard/start.s 10 Nov 2001 01:17:58 -0000 1.1
+++ ld-discard/start.s 28 Jul 2002 18:53:16 -0000
@@ -1,5 +1,5 @@
-.text
-.globl _start
+ .text
+ .globl _start
_start:
.long data
.section .debug_info
Index: ld-discard/static.s
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-discard/static.s,v
retrieving revision 1.1
diff -u -3 -p -r1.1 static.s
--- ld-discard/static.s 10 Nov 2001 01:17:58 -0000 1.1
+++ ld-discard/static.s 28 Jul 2002 18:53:16 -0000
@@ -2,8 +2,8 @@
data:
.section .text.exit,"aw"
text:
-.text
-.globl _start
+ .text
+ .globl _start
_start:
.long data
.section .debug_info
Index: ld-elfvers/vers.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-elfvers/vers.exp,v
retrieving revision 1.15
diff -u -3 -p -r1.15 vers.exp
--- ld-elfvers/vers.exp 16 Jul 2002 00:15:57 -0000 1.15
+++ ld-elfvers/vers.exp 28 Jul 2002 18:53:16 -0000
@@ -25,7 +25,9 @@ if ![isnative] then {return}
# This test can only be run on a couple of ELF platforms.
# Square bracket expressions seem to confuse istarget.
# This is similar to the test that is used in ld-shared, BTW.
-if { ![istarget i?86-*-sysv4*] \
+if { ![istarget hppa*64*-*-hpux*] \
+ && ![istarget hppa*-*-linux*] \
+ && ![istarget i?86-*-sysv4*] \
&& ![istarget i?86-*-unixware] \
&& ![istarget i?86-*-elf*] \
&& ![istarget i?86-*-linux*] \
Index: ld-elfvsb/elfvsb.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-elfvsb/elfvsb.exp,v
retrieving revision 1.13
diff -u -3 -p -r1.13 elfvsb.exp
--- ld-elfvsb/elfvsb.exp 19 Apr 2002 19:28:01 -0000 1.13
+++ ld-elfvsb/elfvsb.exp 28 Jul 2002 18:53:16 -0000
@@ -26,7 +26,9 @@ if ![isnative] then {return}
# This test can only be run on a couple of ELF platforms.
# Square bracket expressions seem to confuse istarget.
-if { ![istarget i?86-*-linux*] \
+if { ![istarget hppa*64*-*-hpux*] \
+ && ![istarget hppa*-*-linux*] \
+ && ![istarget i?86-*-linux*] \
&& ![istarget ia64-*-linux*] \
&& ![istarget m68k-*-linux*] \
&& ![istarget mips*-*-linux*] \
Index: ld-elfweak/elfweak.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-elfweak/elfweak.exp,v
retrieving revision 1.3
diff -u -3 -p -r1.3 elfweak.exp
--- ld-elfweak/elfweak.exp 14 Sep 2001 23:43:17 -0000 1.3
+++ ld-elfweak/elfweak.exp 28 Jul 2002 18:53:16 -0000
@@ -25,7 +25,9 @@ if ![isnative] then {return}
# This test can only be run on a couple of ELF platforms.
# Square bracket expressions seem to confuse istarget.
# This is similar to the test that is used in ld-shared, BTW.
-if { ![istarget i?86-*-sysv4*] \
+if { ![istarget hppa*64*-*-hpux*] \
+ && ![istarget hppa*-*-linux*] \
+ && ![istarget i?86-*-sysv4*] \
&& ![istarget i?86-*-unixware] \
&& ![istarget i?86-*-elf*] \
&& ![istarget i?86-*-linux*] \
Index: ld-linkonce/linkonce.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-linkonce/linkonce.exp,v
retrieving revision 1.1
diff -u -3 -p -r1.1 linkonce.exp
--- ld-linkonce/linkonce.exp 29 Sep 2001 13:01:16 -0000 1.1
+++ ld-linkonce/linkonce.exp 28 Jul 2002 18:53:16 -0000
@@ -21,7 +21,10 @@
# Test for ELF here (or really, .gnu.linkonce functionality), so we don't
# have to qualify on ELF specifically in every .d-file.
-if { ![istarget *-*-linux*] && ![istarget *-*-gnu] && ![istarget *-*-elf] } {
+if { ![istarget *-*-linux*] \
+ && ![istarget *-*-gnu] \
+ && ![istarget hppa*64*-*-hpux*] \
+ && ![istarget *-*-elf] } {
return
}
Index: ld-scripts/phdrs.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-scripts/phdrs.exp,v
retrieving revision 1.9
diff -u -3 -p -r1.9 phdrs.exp
--- ld-scripts/phdrs.exp 27 Aug 2001 10:49:55 -0000 1.9
+++ ld-scripts/phdrs.exp 28 Jul 2002 18:53:16 -0000
@@ -22,6 +22,7 @@ if { ![istarget *-*-sysv4*] \
&& ![istarget *-*-unixware*] \
&& ![istarget *-*-elf*] \
&& ![istarget *-*-eabi*] \
+ && ![istarget hppa*64*-*-hpux*] \
&& ![istarget *-*-linux*] \
&& ![istarget *-*-irix5*] \
&& ![istarget *-*-irix6*] \
Index: ld-scripts/phdrs2.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-scripts/phdrs2.exp,v
retrieving revision 1.1
diff -u -3 -p -r1.1 phdrs2.exp
--- ld-scripts/phdrs2.exp 6 Jun 2002 10:03:38 -0000 1.1
+++ ld-scripts/phdrs2.exp 28 Jul 2002 18:53:16 -0000
@@ -19,6 +19,7 @@ if { ![istarget *-*-sysv4*] \
&& ![istarget *-*-unixware*] \
&& ![istarget *-*-elf*] \
&& ![istarget *-*-eabi*] \
+ && ![istarget hppa*64*-*-hpux*] \
&& ![istarget *-*-linux*] \
&& ![istarget *-*-irix5*] \
&& ![istarget *-*-irix6*] \
Index: ld-selective/sel-dump.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-selective/sel-dump.exp,v
retrieving revision 1.1
diff -u -3 -p -r1.1 sel-dump.exp
--- ld-selective/sel-dump.exp 5 Feb 2002 06:45:15 -0000 1.1
+++ ld-selective/sel-dump.exp 28 Jul 2002 18:53:16 -0000
@@ -20,6 +20,7 @@
if { ![istarget *-*-linux*]
&& ![istarget *-*-gnu]
+ && ![istarget hppa*64*-*-hpux*]
&& ![istarget *-*-elf] } {
return
}
Index: ld-shared/shared.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-shared/shared.exp,v
retrieving revision 1.12
diff -u -3 -p -r1.12 shared.exp
--- ld-shared/shared.exp 19 Apr 2002 19:28:06 -0000 1.12
+++ ld-shared/shared.exp 28 Jul 2002 18:53:17 -0000
@@ -28,7 +28,9 @@ if ![isnative] then {return}
# This test can only be run on a couple of ELF platforms.
# Square bracket expressions seem to confuse istarget.
-if { ![istarget i?86-*-sysv4*] \
+if { ![istarget hppa*64*-*-hpux*] \
+ && ![istarget hppa*-*-linux*] \
+ && ![istarget i?86-*-sysv4*] \
&& ![istarget i?86-*-unixware] \
&& ![istarget i?86-*-elf*] \
&& ![istarget i?86-*-linux*] \
Index: ld-undefined/weak-undef.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-undefined/weak-undef.exp,v
retrieving revision 1.2
diff -u -3 -p -r1.2 weak-undef.exp
--- ld-undefined/weak-undef.exp 13 Mar 2001 06:14:29 -0000 1.2
+++ ld-undefined/weak-undef.exp 28 Jul 2002 18:53:17 -0000
@@ -25,6 +25,7 @@ if { ![istarget *-*-sysv4*] \
&& ![istarget *-*-unixware*] \
&& ![istarget *-*-elf*] \
&& ![istarget *-*-eabi*] \
+ && ![istarget hppa*64*-*-hpux*] \
&& ![istarget *-*-linux*] \
&& ![istarget *-*-irix5*] \
&& ![istarget *-*-irix6*] \