Struct RecyclableValue

Struct Documentation

struct RecyclableValue

A value of an intermediate as tracked by recycle_intermediate_names.

Public Members

ExprPtr original

The intermediate as it is referred to in the input.

std::size_t first_def = 0

Position of the first tree defining this value.

std::size_t last_use = 0

Position of the last tree (potentially) using this value.

bool pinned = false

Whether the value is also defined by a non-recyclable tree and hence has to keep its name

ExprPtr renamed = {}

The intermediate as it is referred to in the output.

SlotMap slot_map = {}

How to rearrange the slots of the original intermediate.