diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2023-03-03 20:45:02 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-03 20:45:02 +0100 |
| commit | 37bd50edddf52170897ff0b55ebec70890a47923 (patch) | |
| tree | 0994fecac7ecfc7e80614a193e682aa39f09c3f8 /compiler/rustc_data_structures/src | |
| parent | efc79bc65450f284251d7f3c3ace78b029bc8d59 (diff) | |
| parent | 3bcea5f97988af0e113128666cfabf335053d1d5 (diff) | |
| download | rust-37bd50edddf52170897ff0b55ebec70890a47923.tar.gz rust-37bd50edddf52170897ff0b55ebec70890a47923.zip | |
Rollup merge of #108681 - nnethercote:needs_process_obligation-comments, r=lqd
Improve comments in `needs_process_obligation`. And a couple of other places. r? `@lqd`
Diffstat (limited to 'compiler/rustc_data_structures/src')
| -rw-r--r-- | compiler/rustc_data_structures/src/obligation_forest/mod.rs | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler/rustc_data_structures/src/obligation_forest/mod.rs b/compiler/rustc_data_structures/src/obligation_forest/mod.rs index 16f401f2057..91abdaadabd 100644 --- a/compiler/rustc_data_structures/src/obligation_forest/mod.rs +++ b/compiler/rustc_data_structures/src/obligation_forest/mod.rs @@ -426,6 +426,7 @@ impl<O: ForestObligation> ObligationForest<O> { // nodes. Therefore we use a `while` loop. let mut index = 0; while let Some(node) = self.nodes.get_mut(index) { + // This test is extremely hot. if node.state.get() != NodeState::Pending || !processor.needs_process_obligation(&node.obligation) { @@ -439,6 +440,7 @@ impl<O: ForestObligation> ObligationForest<O> { // out of sync with `nodes`. It's not very common, but it does // happen, and code in `compress` has to allow for it. + // This code is much less hot. match processor.process_obligation(&mut node.obligation) { ProcessResult::Unchanged => { // No change in state. |
