Description
So far, in SDCC the forgotten / introduced vertex was recomputed whenever needed, similar to how get_forgotten_vertex() / get_introduced_vertex() from nice_decomposition.hpp work.
However, in one application¹, this turned out to be a problem speed-wise. There, the solution was to add a member diff_vertex to the tree-decomposition node type. Then the nicify-stuff writes diff_vertex, and the tree-decomposition-based algorithms just use that one.
I wonder if it would make sense to have this in treedec, too.
Philipp
¹ An experimental lospre version. It does redundancy elimination for many different expression on the same CFG. This means that we run a bottom-up dynamic programming algorithm many times (using the same tree-decomposition, but otherwise with different input data).