2005-10-20 H.J. Lu <hongjiu.lu@intel.com>
authorH.J. Lu <hjl.tools@gmail.com>
Thu, 20 Oct 2005 17:54:53 +0000 (17:54 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Thu, 20 Oct 2005 17:54:53 +0000 (17:54 +0000)
* ld-ia64/ia64.exp: Undo the last change. Add support for *.d.

* ld-ia64/link-order.d: New file.

ld/testsuite/ChangeLog
ld/testsuite/ld-ia64/ia64.exp
ld/testsuite/ld-ia64/link-order.d [new file with mode: 0644]

index 33831ce..c100d28 100644 (file)
@@ -1,5 +1,11 @@
 2005-10-20  H.J. Lu  <hongjiu.lu@intel.com>
 
+       * ld-ia64/ia64.exp: Undo the last change. Add support for *.d.
+
+       * ld-ia64/link-order.d: New file.
+
+2005-10-20  H.J. Lu  <hongjiu.lu@intel.com>
+
        PR ld/251
        * ld-elf/group.2d: New file.
 
index 7bab713..b7ee50f 100644 (file)
@@ -53,48 +53,9 @@ set ia64tests {
 
 run_ld_link_tests $ia64tests
 
-# Check link order
-proc link_order {} {
-    global AS
-    global LD
-    global READELF
-    global srcdir
-    global subdir
-
-    set testname "link order"
-    if ![ld_assemble $AS $srcdir/../../binutils/testsuite/binutils-all/link-order.s tmpdir/link-order.o] {
-       unresolved $testname
-       return
-    }
-
-    if ![ld_simple_link $LD tmpdir/link-order.ro "-r tmpdir/link-order.o"] {
-       unresolved $testname
-       return
-    }
-
-    verbose -log "$READELF -t --wide tmpdir/link-order.o | grep IA_64_UNWIND > tmpdir/link-order.o.out"
-    catch "exec $READELF -t --wide tmpdir/link-order.o | grep IA_64_UNWIND > tmpdir/link-order.o.out" exec_output
-    set exec_output [prune_warnings $exec_output]
-    if ![string match "" $exec_output] then {
-       unresolved $testname
-       return
-    }
-
-    verbose -log "$READELF -t --wide tmpdir/link-order.ro | grep IA_64_UNWIND > tmpdir/link-order.ro.out"
-    catch "exec $READELF -t --wide tmpdir/link-order.ro | grep IA_64_UNWIND > tmpdir/link-order.ro.out" exec_output
-    set exec_output [prune_warnings $exec_output]
-    if ![string match "" $exec_output] then {
-       unresolved $testname
-       return
-    }
-
-    verbose -log "cmp tmpdir/link-order.o.out tmpdir/link-order.ro.out"
-    catch "exec cmp tmpdir/link-order.o.out tmpdir/link-order.ro.out" exec_output
-    if ![string match "" $exec_output] then {
-       fail $testname
-    } else {
-       pass $testname
-    }
+set test_list [lsort [glob -nocomplain $srcdir/$subdir/*.d]]
+foreach t $test_list {
+    # We need to strip the ".d", but can leave the dirname.
+    verbose [file rootname $t]
+    run_dump_test [file rootname $t]
 }
-
-link_order
diff --git a/ld/testsuite/ld-ia64/link-order.d b/ld/testsuite/ld-ia64/link-order.d
new file mode 100644 (file)
index 0000000..53a3794
--- /dev/null
@@ -0,0 +1,9 @@
+#source: ../../../binutils/testsuite/binutils-all/link-order.s
+#ld: -r
+#readelf: -S --wide
+
+#...
+  \[[ ]+1\] \.text.*[ \t]+PROGBITS[ \t0-9a-f]+AX.*
+#...
+  \[[ 0-9]+\] \.IA_64.unwind[ \t]+IA_64_UNWIND[ \t0-9a-f]+AL[ \t]+1[ \t]+1[ \t]+8
+#pass