diff --git a/testsuite/driver/testlib.py b/testsuite/driver/testlib.py
index 788b0dd1d7f5be0e832ee77ecaeb113a7f9d69e5..76dd54830203f494e9d9f0f21dd8610a29951a26 100644
--- a/testsuite/driver/testlib.py
+++ b/testsuite/driver/testlib.py
@@ -733,10 +733,12 @@ def _find_so(lib, directory, in_place):
 
     # produce the suffix for the CI operating system
     suffix = "so"
-    if config.os == "mingw32":
-        suffix = "dll"
-    elif config.os == "darwin":
-        suffix = "dylib"
+    # config.os is host os
+    if not config.cross:
+        if config.os == "mingw32":
+            suffix = "dll"
+        elif config.os == "darwin":
+            suffix = "dylib"
 
     # Most artfacts are of the form foo-inplace, or foo-<hash> for release
     # builds, except for the rts.