|
CBMC
|
Introduce LET for common subexpressions. More...
#include <letify.h>
Classes | |
| struct | let_count_idt |
Public Member Functions | |
| exprt | operator() (const exprt &) |
Protected Types | |
| using | seen_expressionst = std::unordered_map< exprt, let_count_idt, irep_hash > |
Protected Member Functions | |
| void | collect_bindings (const exprt &expr, seen_expressionst &map, std::vector< exprt > &let_order) |
Static Protected Member Functions | |
| static exprt | letify (const exprt &expr, const std::vector< exprt > &let_order, const seen_expressionst &map) |
| Construct a nested let expression for expressions in let_order that are used more than once. More... | |
| static exprt | substitute_let (const exprt &expr, const seen_expressionst &map) |
Protected Attributes | |
| std::size_t | let_id_count = 0 |
|
protected |
|
protected |
Definition at line 16 of file letify.cpp.
|
staticprotected |
Construct a nested let expression for expressions in let_order that are used more than once.
Definition at line 53 of file letify.cpp.
Definition at line 79 of file letify.cpp.
|
staticprotected |
Definition at line 89 of file letify.cpp.