diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index 52102f018ee5765a95e93925f4539034aa1c2fb0..bc42d5a1c53a9caff309b6c3b22a4f60aae8cf7a 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2005-07-14  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* lib/ld-lib.exp (run_ld_link_exec_tests): Ignore assembler
+	warnings.
+
 2005-07-14  H.J. Lu  <hongjiu.lu@intel.com>
 
 	* lib/ld-lib.exp (run_ld_link_exec_tests): Update comments.
diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp
index 7f2f38643ed859cfe702e4af376d58e39f2dfcf7..ca260c846aadc105046df210ba4678bf2d1dec47 100644
--- a/ld/testsuite/lib/ld-lib.exp
+++ b/ld/testsuite/lib/ld-lib.exp
@@ -1281,6 +1281,7 @@ proc run_ld_link_exec_tests { ldtests } {
     global env
     global CC
     global CFLAGS
+    global errcnt
 
     foreach testitem $ldtests {
 	set testname [lindex $testitem 0]
@@ -1291,7 +1292,6 @@ proc run_ld_link_exec_tests { ldtests } {
 	set expfile [lindex $testitem 5]
 	set cflags [lindex $testitem 6]
 	set objfiles {}
-	set is_unresolved 0
 	set failed 0
 
 #	verbose -log "Testname is $testname"
@@ -1306,17 +1306,10 @@ proc run_ld_link_exec_tests { ldtests } {
 	    set objfile "tmpdir/[file rootname $src_file].o"
 	    lappend objfiles $objfile
 
-	    if ![ld_compile "$CC -c $CFLAGS $cflags" $srcdir/$subdir/$src_file $objfile] {
-		set is_unresolved 1
-		break
-	    }
-	}
-
-	# Catch assembler errors.
-	if { $is_unresolved != 0 } {
-	    unresolved $testname
-	    continue
-	}
+	# We ignore warnings since some compilers may generate
+	# incorrect section attributes and the assembler will warn
+	# them.
+	ld_compile "$CC -c $CFLAGS $cflags" $srcdir/$subdir/$src_file $objfile
 
 	if ![ld_link $ld $binfile "-L$srcdir/$subdir $ld_options $objfiles"] {
 	    set failed 1
@@ -1345,15 +1338,10 @@ proc run_ld_link_exec_tests { ldtests } {
 
 	    if { $failed != 0 } {
 		fail $testname
-	    } else { if { $is_unresolved == 0 } {
+	    } else {
+		set errcnt 0
 		pass $testname
 	    } }
 	}
-
-	# Catch action errors.
-	if { $is_unresolved != 0 } {
-	    unresolved $testname
-	    continue
-	}
     }
 }