]> git.lizzy.rs Git - rust.git/commit - src/tools/miri
Auto merge of #78780 - cjgillot:req, r=Mark-Simulacrum
authorbors <bors@rust-lang.org>
Sat, 11 Sep 2021 20:39:47 +0000 (20:39 +0000)
committerbors <bors@rust-lang.org>
Sat, 11 Sep 2021 20:39:47 +0000 (20:39 +0000)
commit8c2b6ea37d7719a0370bd404030eef9702c1752c
tree0abf4ec64c0b7cee47007755372a8c0b16939439
parent43769af69e43d0fb9770f0a392671f000595df78
parent31330bfce12f59b9c9a4d7b20235fdc38dcf7583
Auto merge of #78780 - cjgillot:req, r=Mark-Simulacrum

Refactor query forcing

The control flow in those functions was very complex, with several layers of continuations.

I tried to simplify the implementation, while keeping essentially the same logic.
Now, all code paths go through `try_execute_query` for the actual query execution.
Communication with the `dep_graph` and the live caches are the only difference between query getting/ensuring/forcing.
compiler/rustc_query_system/src/query/job.rs
compiler/rustc_query_system/src/query/plumbing.rs