|
Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
|
Basic-block CFG representation and lowering from structured HIR. More...
#include <limits>#include <sstream>#include <string>#include <utility>#include <Compiler_HIR_Model.H>#include <ah-arena.H>#include <ah-errors.H>#include <tpl_dynArray.H>Go to the source code of this file.
Classes | |
| struct | Aleph::Compiler_CFG_Terminator |
| Detailed information about a block's termination. More... | |
| struct | Aleph::Compiler_CFG_Block |
| Represents a single basic block in a CFG. More... | |
| struct | Aleph::Compiler_CFG_Function |
| CFG representation of a single function or top-level body. More... | |
| struct | Aleph::Compiler_CFG_Module |
| Aggregates all lowered CFGs for a compilation unit. More... | |
| class | Aleph::Compiler_CFG_Context |
| Arena-backed ownership context for CFG objects. More... | |
| struct | Aleph::Compiler_CFG_Context::Owned_Object |
| Internal tracker for objects with non-trivial destructors. More... | |
| struct | Aleph::Compiler_CFG_Validation_Report |
| Detailed results of a CFG structural validation. More... | |
| class | Aleph::Compiler_CFG_Lowering |
| Transformation engine that lowers typed HIR into reusable CFGs. More... | |
| struct | Aleph::Compiler_CFG_Lowering::Loop_Targets |
| Internal state for loop lowering. More... | |
Namespaces | |
| namespace | Aleph |
| Main namespace for Aleph-w library functions. | |
| namespace | Aleph::Compiler_CFG_Detail |
Typedefs | |
| using | Aleph::Compiler_CFG_Block_Id = size_t |
| Typedef for unique block identifiers within a function. | |
Enumerations | |
| enum class | Aleph::Compiler_CFG_Terminator_Kind { Aleph::None , Aleph::Jump , Aleph::Branch , Aleph::Return , Aleph::Exit , Aleph::Unreachable } |
| Categories of basic block terminators. More... | |
Basic-block CFG representation and lowering from structured HIR.
This header introduces the first reusable control-flow graph (CFG) layer for the compiler-support platform. It sits after Compiler_HIR.H: HIR preserves structured control flow, while CFG makes branches, loops, exits, and joins explicit as basic blocks and terminators.
The current CFG layer includes:
Jump, Branch, Return, Exit, Unreachable).The MVP remains deliberately high-level. It does not yet introduce SSA, explicit temporaries, or a low-level IR. Its purpose is to provide a stable bridge between structured interpretation and later MIR/SSA passes.
Definition in file Compiler_CFG.H.