mirror of
https://github.com/revng/revng
synced 2026-06-21 14:07:57 +00:00
fa69bd24e5
Introduce the `ScopeCloser` and `GotoTarget` annotations in the IR, and the relative necessary machinery, needed to handle scope closer and goto edges for the new backend. A specialization of the `llvm::GraphTraits`, called `ScopeGraph`, that is able to handle both the above mentioned annotations is provided. For the `llvm::GraphTraits` implementation, we introduce the `GeneratorIterator` class, which uses a coroutine to store the status of the iteration. A debug logger pass is added, so that we are able to test the functionality with `FileCheck`.