* ld-mips-elf/mips-elf.exp (linux_gnu): New variable. Add:
authorAlexandre Oliva <aoliva@redhat.com>
Tue, 11 Mar 2003 19:20:16 +0000 (19:20 +0000)
committerAlexandre Oliva <aoliva@redhat.com>
Tue, 11 Mar 2003 19:20:16 +0000 (19:20 +0000)
* ld-mips-elf/rel32-o32.d, ld-mips-elf/rel32-n32.d,
ld-mips-elf/rel64.d, ld-mips-elf/rel32.s, ld-mips-elf/rel64.s: New
tests.

ld/testsuite/ChangeLog
ld/testsuite/ld-mips-elf/mips-elf.exp
ld/testsuite/ld-mips-elf/rel32-n32.d [new file with mode: 0644]
ld/testsuite/ld-mips-elf/rel32-o32.d [new file with mode: 0644]
ld/testsuite/ld-mips-elf/rel32.s [new file with mode: 0644]
ld/testsuite/ld-mips-elf/rel64.d [new file with mode: 0644]
ld/testsuite/ld-mips-elf/rel64.s [new file with mode: 0644]

index 048d36e6a606ef96e42f5e90681e309be47b1bae..299ade0c9aff56977bd110d9b5f9ae3dbe4b2c0a 100644 (file)
@@ -1,3 +1,10 @@
+2003-03-11  Alexandre Oliva  <aoliva@redhat.com>
+
+       * ld-mips-elf/mips-elf.exp (linux_gnu): New variable.  Add:
+       * ld-mips-elf/rel32-o32.d, ld-mips-elf/rel32-n32.d,
+       ld-mips-elf/rel64.d, ld-mips-elf/rel32.s, ld-mips-elf/rel64.s: New
+       tests.
+
 2003-03-11  Alan Modra  <amodra@bigpond.net.au>
 
        * ld-powerpc/tlsso.r: Adjust for corrected zero symbol index relocs.
index a75f4db0d9f2d933338c5e1ee4a0b7335e2bad69..d206bd4287275e15c7c9bc7b7fa98256449422e7 100644 (file)
@@ -1,5 +1,5 @@
 # Expect script for MIPS ELF linker tests
-#   Copyright 2002 Free Software Foundation, Inc.
+#   Copyright 2002, 2003 Free Software Foundation, Inc.
 #
 # This file is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -20,6 +20,7 @@ if { [istarget mips*-*-*] } then {
 
     set elf [expr [istarget mips*-*-elf] || [istarget mips*-*-linux*] || \
                  [istarget mips*-*-netbsd] || [istarget mips*-*-irix*]]
+    set linux_gnu [expr [istarget mips*-*-linux*]]
     set embedded_elf [expr [istarget mips*-*-elf]]
 
 
@@ -34,6 +35,13 @@ if { [istarget mips*-*-*] } then {
        run_dump_test "multi-got-1"
     }
 
+    if { $linux_gnu } {
+       run_dump_test "rel32-o32"
+       run_dump_test "rel32-n32"
+       run_dump_test "rel64"
+    }
+
+
     if { $embedded_elf } {
        # Check basic Embedded-PIC PC-relative HI/LO relocs.
        run_dump_test "empic1-ln"
diff --git a/ld/testsuite/ld-mips-elf/rel32-n32.d b/ld/testsuite/ld-mips-elf/rel32-n32.d
new file mode 100644 (file)
index 0000000..a9233c4
--- /dev/null
@@ -0,0 +1,16 @@
+#name: MIPS rel32 n32
+#source: rel32.s
+#as: -KPIC -n32
+#readelf: -x 5 -r
+#ld: -shared -melf32btsmipn32
+
+Relocation section '.rel.dyn' at offset 0x3d0 contains 2 entries:
+ Offset     Info    Type            Sym.Value  Sym. Name
+00000000  00000000 R_MIPS_NONE      
+000003f0  00000003 R_MIPS_REL32     
+
+Hex dump of section '.text':
+  0x000003e0 00000000 00000000 00000000 00000000 ................
+  0x000003f0 000003f0 00000000 00000000 00000000 ................
+  0x00000400 00000000 00000000 00000000 00000000 ................
+  0x00000410 00000000 00000000 00000000 00000000 ................
diff --git a/ld/testsuite/ld-mips-elf/rel32-o32.d b/ld/testsuite/ld-mips-elf/rel32-o32.d
new file mode 100644 (file)
index 0000000..7bcad7b
--- /dev/null
@@ -0,0 +1,16 @@
+#name: MIPS rel32 o32
+#source: rel32.s
+#as: -KPIC -32
+#readelf: -x 6 -r
+#ld: -shared -melf32btsmip
+
+Relocation section '.rel.dyn' at offset 0x3e0 contains 2 entries:
+ Offset     Info    Type            Sym.Value  Sym. Name
+00000000  00000000 R_MIPS_NONE      
+00000400  00000003 R_MIPS_REL32     
+
+Hex dump of section '.text':
+  0x000003f0 00000000 00000000 00000000 00000000 ................
+  0x00000400 00000400 00000000 00000000 00000000 ................
+  0x00000410 00000000 00000000 00000000 00000000 ................
+  0x00000420 00000000 00000000 00000000 00000000 ................
diff --git a/ld/testsuite/ld-mips-elf/rel32.s b/ld/testsuite/ld-mips-elf/rel32.s
new file mode 100644 (file)
index 0000000..dad4670
--- /dev/null
@@ -0,0 +1,4 @@
+       .space 16
+.Lfoo:
+       .word .Lfoo
+       .space 16
diff --git a/ld/testsuite/ld-mips-elf/rel64.d b/ld/testsuite/ld-mips-elf/rel64.d
new file mode 100644 (file)
index 0000000..f2289b0
--- /dev/null
@@ -0,0 +1,19 @@
+#name: MIPS rel64 n64
+#source: rel64.s
+#as: -KPIC -64
+#readelf: -x 6 -r
+#ld: -shared -melf64btsmip
+
+Relocation section '.rel.dyn' at offset 0x5b0 contains 2 entries:
+  Offset          Info           Type           Sym. Value    Sym. Name
+000000000000  000000000000 R_MIPS_NONE      
+                    Type2: R_MIPS_NONE      
+                    Type3: R_MIPS_NONE      
+0000000005e0  000000001203 R_MIPS_REL32     
+                    Type2: R_MIPS_64        
+                    Type3: R_MIPS_NONE      
+
+Hex dump of section '.text':
+  0x000005d0 00000000 00000000 00000000 00000000 ................
+  0x000005e0 00000000 000005e0 00000000 00000000 ................
+  0x000005f0 00000000 00000000 00000000 00000000 ................
diff --git a/ld/testsuite/ld-mips-elf/rel64.s b/ld/testsuite/ld-mips-elf/rel64.s
new file mode 100644 (file)
index 0000000..3971eb8
--- /dev/null
@@ -0,0 +1,4 @@
+       .space 16
+.Lfoo:
+       .dword .Lfoo
+       .space 16