diff --git a/cargo-miri/bin.rs b/cargo-miri/bin.rs
index 21a6b68c619..f38e79732b2 100644
--- a/cargo-miri/bin.rs
+++ b/cargo-miri/bin.rs
@@ -596,16 +596,13 @@ fn phase_cargo_rustc(args: env::Args) {
     let target_crate = is_target_crate();
     let print = get_arg_flag_value("--print").is_some(); // whether this is cargo passing `--print` to get some infos
 
-    // rlib and cdylib are just skipped, we cannot interpret them and do not need them
+    // cdylib is just skipped, we cannot interpret it and do not need it
     // for the rest of the build either.
-    match get_arg_flag_value("--crate-type").as_deref() {
-        Some("rlib") | Some("cdylib") => {
-            if verbose {
-                eprint!("[cargo-miri rustc] (rlib/cdylib skipped)");
-            }
-            return;
+    if get_arg_flag_value("--crate-type").as_deref() == Some("cdylib") {
+        if verbose {
+            eprint!("[cargo-miri rustc] (cdylib skipped)");
         }
-        _ => {},
+        return;
     }
 
     let store_json = |info: CrateRunInfo| {
diff --git a/test-cargo-miri/Cargo.lock b/test-cargo-miri/Cargo.lock
index e02439df5d5..84b69f57333 100644
--- a/test-cargo-miri/Cargo.lock
+++ b/test-cargo-miri/Cargo.lock
@@ -1,5 +1,7 @@
 # This file is automatically @generated by Cargo.
 # It is not intended for manual editing.
+version = 3
+
 [[package]]
 name = "byteorder"
 version = "1.3.4"
@@ -13,6 +15,7 @@ dependencies = [
  "byteorder",
  "issue_1567",
  "rand",
+ "rlib-dep",
  "serde_derive",
 ]
 
@@ -140,6 +143,10 @@ dependencies = [
  "rand_core",
 ]
 
+[[package]]
+name = "rlib-dep"
+version = "0.1.0"
+
 [[package]]
 name = "serde_derive"
 version = "1.0.118"
diff --git a/test-cargo-miri/Cargo.toml b/test-cargo-miri/Cargo.toml
index 1613f067ed3..ab44f6b304a 100644
--- a/test-cargo-miri/Cargo.toml
+++ b/test-cargo-miri/Cargo.toml
@@ -9,6 +9,7 @@ edition = "2018"
 
 [dependencies]
 byteorder = "1.0"
+rlib-dep.path = "rlib-dep"
 issue_1567 = { path ="issue-1567" }
 
 [dev-dependencies]
diff --git a/test-cargo-miri/rlib-dep/Cargo.toml b/test-cargo-miri/rlib-dep/Cargo.toml
new file mode 100644
index 00000000000..c12653e9c83
--- /dev/null
+++ b/test-cargo-miri/rlib-dep/Cargo.toml
@@ -0,0 +1,8 @@
+[package]
+name = "rlib-dep"
+version = "0.1.0"
+authors = ["Miri Team"]
+edition = "2018"
+
+[lib]
+crate-type = ["rlib"]
diff --git a/test-cargo-miri/rlib-dep/src/lib.rs b/test-cargo-miri/rlib-dep/src/lib.rs
new file mode 100644
index 00000000000..efde2b58e19
--- /dev/null
+++ b/test-cargo-miri/rlib-dep/src/lib.rs
@@ -0,0 +1,3 @@
+pub fn use_me() -> bool {
+    true
+}
diff --git a/test-cargo-miri/src/lib.rs b/test-cargo-miri/src/lib.rs
index 4e2c8b572c7..46d76bce127 100644
--- a/test-cargo-miri/src/lib.rs
+++ b/test-cargo-miri/src/lib.rs
@@ -3,5 +3,5 @@
 /// assert!(cargo_miri_test::make_true());
 /// ```
 pub fn make_true() -> bool {
-    true
+    rlib_dep::use_me()
 }