diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 7cf2a77e0aa2258e4d59f3a5ecb1bfa68220cd6f..9f16bfec7e42a0ed268003d01e673254ae4f27db 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2006-04-10  Matthias Klose  <doko@debian.org>
+
+	* testsuite/lib/gcc-defs.exp (gcc-set-multilib-library-path):
+	Recognize multilib directory names containing underscores.
+
 2006-04-10  Roger Sayle  <roger@eyesopen.com>
 
 	* gcc.target/i386/vecinit-1.c: New test case.
diff --git a/gcc/testsuite/lib/gcc-defs.exp b/gcc/testsuite/lib/gcc-defs.exp
index afee893d9a190cd8e315d10d80daed5788c0fd67..3b60200a6001741ab86a6a48ab441ac5f824a98e 100644
--- a/gcc/testsuite/lib/gcc-defs.exp
+++ b/gcc/testsuite/lib/gcc-defs.exp
@@ -238,7 +238,7 @@ proc gcc-set-multilib-library-path { compiler } {
     if { [is_remote host] == 0 && [which $compiler] != 0 } {
 	foreach i "[exec $compiler --print-multi-lib]" {
 	    set mldir ""
-	    regexp -- "\[a-z0-9=/\.-\]*;" $i mldir
+	    regexp -- "\[a-z0-9=_/\.-\]*;" $i mldir
 	    set mldir [string trimright $mldir "\;@"]
 	    if { "$mldir" == "." } {
 		continue
diff --git a/libffi/ChangeLog b/libffi/ChangeLog
index def8e5c97b976fac203d5d3e4b94b75ab0bd5c65..cf733efe4c0b084620e41c23082152c1d85651eb 100644
--- a/libffi/ChangeLog
+++ b/libffi/ChangeLog
@@ -1,3 +1,8 @@
+2006-04-10  Matthias Klose  <doko@debian.org>
+
+	* testsuite/lib/libffi-dg.exp (libffi-init): Recognize multilib
+	directory names containing underscores.
+
 2006-04-07  James E Wilson  <wilson@specifix.com>
 
 	* testsuite/libffi.call/float4.c: New testcase.
diff --git a/libffi/testsuite/lib/libffi-dg.exp b/libffi/testsuite/lib/libffi-dg.exp
index c3eecff96c0a15b4bbd723f3ede08b1340d12f71..11dd39c33eee6254e4b0716b3fbf3d014d5288e5 100644
--- a/libffi/testsuite/lib/libffi-dg.exp
+++ b/libffi/testsuite/lib/libffi-dg.exp
@@ -120,7 +120,7 @@ proc libffi-init { args } {
     if { [is_remote host] == 0 && [which $compiler] != 0 } {
 	foreach i "[exec $compiler --print-multi-lib]" {
 	    set mldir ""
-	    regexp -- "\[a-z0-9=/\.-\]*;" $i mldir
+	    regexp -- "\[a-z0-9=_/\.-\]*;" $i mldir
 	    set mldir [string trimright $mldir "\;@"]
 	    if { "$mldir" == "." } {
 		continue
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index 33d1e78da2ee371ff0a9864f5c01065cd945a913..2f8fe74f2d5d2963784d9e2bb819a6f2b999d79e 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,8 @@
+2006-04-10  Matthias Klose  <doko@debian.org>
+
+	* testsuite/lib/libgomp.exp (libgomp_init): Recognize multilib
+	directory names containing underscores.
+
 2006-03-21  Jakub Jelinek  <jakub@redhat.com>
 
 	PR c++/26691
diff --git a/libgomp/testsuite/lib/libgomp-dg.exp b/libgomp/testsuite/lib/libgomp-dg.exp
index ecd071360134a23d3e801361d08ccc5fe39032b1..f8c6a427d18adc9b5cf8cc86831a7bd434075c23 100644
--- a/libgomp/testsuite/lib/libgomp-dg.exp
+++ b/libgomp/testsuite/lib/libgomp-dg.exp
@@ -107,7 +107,7 @@ proc libgomp_init { args } {
 	if { [is_remote host] == 0 && [which $compiler] != 0 } {
 	  foreach i "[exec $compiler --print-multi-lib]" {
 	    set mldir ""
-	    regexp -- "\[a-z0-9=/\.-\]*;" $i mldir
+	    regexp -- "\[a-z0-9=_/\.-\]*;" $i mldir
 	    set mldir [string trimright $mldir "\;@"]
 	    if { "$mldir" == "." } {
 	      continue
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 2117abfe7779530d384f7158e1e4cd572b721011..e65b16cc466474964567776774b229747fa2bbe2 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,8 @@
+2006-04-10  Matthias Klose  <doko@debian.org>
+
+	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
+	directory names containing underscores.
+
 2006-04-10  Andrew Haley  <aph@redhat.com>
 
 	* include/x86_64-signal.h (HANDLE_DIVIDE_OVERFLOW): New.
diff --git a/libjava/testsuite/lib/libjava.exp b/libjava/testsuite/lib/libjava.exp
index 421b3d25b6733528dd019711226cb27a0552e745..506982e50e95f1310f63d8d40014ddae54308a8f 100644
--- a/libjava/testsuite/lib/libjava.exp
+++ b/libjava/testsuite/lib/libjava.exp
@@ -212,7 +212,7 @@ proc libjava_init { args } {
 	if { [is_remote host] == 0 && [which $compiler] != 0 } {
 	    foreach i "[exec $compiler --print-multi-lib]" {
 		set mldir ""
-		regexp -- "\[a-z0-9=/\.-\]*;" $i mldir
+		regexp -- "\[a-z0-9=_/\.-\]*;" $i mldir
 		set mldir [string trimright $mldir "\;@"]
 		if { "$mldir" == "." } {
 		    continue
diff --git a/libmudflap/ChangeLog b/libmudflap/ChangeLog
index d7819e932b81c350c9d5155187f1f9268804d3f9..ca156e88e7eea8c7f10666f2e0bc769643befc31 100644
--- a/libmudflap/ChangeLog
+++ b/libmudflap/ChangeLog
@@ -1,3 +1,8 @@
+2006-04-10  Matthias Klose  <doko@debian.org>
+
+	* testsuite/lib/libmudflap.exp (libmudflap-init): Recognize multilib
+	directory names containing underscores.
+
 2005-11-22  Janis Johnson  <janis187@us.ibm.com>
 
 	* testsuite/lib/libmudflap.exp (libmudflap-init): Remove -static from
diff --git a/libmudflap/testsuite/lib/libmudflap.exp b/libmudflap/testsuite/lib/libmudflap.exp
index e08f13d25ef17b85f413d7c3be38973adbb8c3f3..94d060b3c75a4b680ed4314541cefa064ded5650 100644
--- a/libmudflap/testsuite/lib/libmudflap.exp
+++ b/libmudflap/testsuite/lib/libmudflap.exp
@@ -69,7 +69,7 @@ proc libmudflap-init { language } {
     if {[is_remote host] == 0} {
 	foreach i "[exec ${gccdir}/xgcc --print-multi-lib]" {
 	    set mldir ""
-	    regexp -- "\[a-z0-9=/\.-\]*;" $i mldir
+	    regexp -- "\[a-z0-9=_/\.-\]*;" $i mldir
 	    set mldir [string trimright $mldir "\;@"]
 	    if { "$mldir" == "." } {
 		continue
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index b03febe05a833fc16c030c1b59dc0417b58fb9a1..2fcdcfaae4e694714e118060632b118e7420b270 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,8 @@
+2006-04-10  Matthias Klose  <doko@debian.org>
+
+	* testsuite/lib/libstdc++.exp (libstdc++_init): Recognize multilib
+	directory names containing underscores.
+
 2006-04-10  Paolo Carlini  <pcarlini@suse.de>
 
 	DR 538, [Ready]
diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp b/libstdc++-v3/testsuite/lib/libstdc++.exp
index ab364191d682b96095897724ef575f0c30f4edf6..0a9a6a8168d64f1e052d3212e0fa8f456f92c263 100644
--- a/libstdc++-v3/testsuite/lib/libstdc++.exp
+++ b/libstdc++-v3/testsuite/lib/libstdc++.exp
@@ -150,7 +150,7 @@ proc libstdc++_init { testfile } {
 	if { [is_remote host] == 0 && [which $compiler] != 0 } {
 	  foreach i "[exec $compiler --print-multi-lib]" {
 	    set mldir ""
-	    regexp -- "\[a-z0-9=/\.-\]*;" $i mldir
+	    regexp -- "\[a-z0-9=_/\.-\]*;" $i mldir
 	    set mldir [string trimright $mldir "\;@"]
 	    if { "$mldir" == "." } {
 	      continue