about summary refs log tree commit diff
diff options
context:
space:
mode:
authorCamille GILLOT <gillot.camille@gmail.com>2021-05-30 10:48:48 +0200
committerCamille GILLOT <gillot.camille@gmail.com>2021-08-22 20:23:29 +0200
commit45d6decc19b419448961fdb5ba3e062c9267a393 (patch)
treea6ccde47f22e94118fd4017f1c8ed8c6bbbd4487
parentc3bf3969d408f46881908336f9e3a8721601abc4 (diff)
downloadrust-45d6decc19b419448961fdb5ba3e062c9267a393.tar.gz
rust-45d6decc19b419448961fdb5ba3e062c9267a393.zip
Remove try_mark_green_and_read.
-rw-r--r--compiler/rustc_query_system/src/dep_graph/graph.rs15
-rw-r--r--compiler/rustc_query_system/src/query/plumbing.rs9
2 files changed, 8 insertions, 16 deletions
diff --git a/compiler/rustc_query_system/src/dep_graph/graph.rs b/compiler/rustc_query_system/src/dep_graph/graph.rs
index 21f9d51e7af..16fca7a3cd9 100644
--- a/compiler/rustc_query_system/src/dep_graph/graph.rs
+++ b/compiler/rustc_query_system/src/dep_graph/graph.rs
@@ -499,22 +499,11 @@ impl<K: DepKind> DepGraph<K> {
         None
     }
 
-    /// Try to read a node index for the node dep_node.
+    /// Try to mark a node index for the node dep_node.
+    ///
     /// A node will have an index, when it's already been marked green, or when we can mark it
     /// green. This function will mark the current task as a reader of the specified node, when
     /// a node index can be found for that node.
-    pub fn try_mark_green_and_read<Ctxt: QueryContext<DepKind = K>>(
-        &self,
-        tcx: Ctxt,
-        dep_node: &DepNode<K>,
-    ) -> Option<(SerializedDepNodeIndex, DepNodeIndex)> {
-        self.try_mark_green(tcx, dep_node).map(|(prev_index, dep_node_index)| {
-            debug_assert!(self.is_green(&dep_node));
-            self.read_index(dep_node_index);
-            (prev_index, dep_node_index)
-        })
-    }
-
     pub fn try_mark_green<Ctxt: QueryContext<DepKind = K>>(
         &self,
         tcx: Ctxt,
diff --git a/compiler/rustc_query_system/src/query/plumbing.rs b/compiler/rustc_query_system/src/query/plumbing.rs
index 86097042da0..9f89f6f5309 100644
--- a/compiler/rustc_query_system/src/query/plumbing.rs
+++ b/compiler/rustc_query_system/src/query/plumbing.rs
@@ -523,7 +523,8 @@ where
     // We must ensure that this is handled correctly.
 
     let (prev_dep_node_index, dep_node_index) =
-        tcx.dep_context().dep_graph().try_mark_green_and_read(tcx, &dep_node)?;
+        tcx.dep_context().dep_graph().try_mark_green(tcx, &dep_node)?;
+    tcx.dep_context().dep_graph().read_index(dep_node_index);
 
     debug_assert!(tcx.dep_context().dep_graph().is_green(dep_node));
 
@@ -725,9 +726,10 @@ where
 
     let dep_node = query.to_dep_node(*tcx.dep_context(), key);
 
-    match tcx.dep_context().dep_graph().try_mark_green_and_read(tcx, &dep_node) {
+    let dep_graph = tcx.dep_context().dep_graph();
+    match dep_graph.try_mark_green(tcx, &dep_node) {
         None => {
-            // A None return from `try_mark_green_and_read` means that this is either
+            // A None return from `try_mark_green` means that this is either
             // a new dep node or that the dep node has already been marked red.
             // Either way, we can't call `dep_graph.read()` as we don't have the
             // DepNodeIndex. We must invoke the query itself. The performance cost
@@ -736,6 +738,7 @@ where
             true
         }
         Some((_, dep_node_index)) => {
+            dep_graph.read_index(dep_node_index);
             tcx.dep_context().profiler().query_cache_hit(dep_node_index.into());
             false
         }