struct
BranchStruct holding information about a regular or conditional branch operation.
Contents
- Reference
❱ Base classes
- class maat::serial::Serializable
- Virtual interface that serializable classes must implement.
❱ Public functions
- auto class_uid() const -> uid_t virtual
- Return the class uid (see ClassId enum)
-
void dump(serial::
Serializer&) const virtual - Dump the object contents in a serializer stream.
-
void load(serial::
Deserializer&) virtual - Restore an object from a deserializer stream.
❱ Public variables
- std::optional<bool> taken
- Boolean indicating if the branch is taken or not (it has no value for purely symbolic conditions)
- Constraint cond
- Condition for the branch. The branch is taken if the constraint evaluates to True (warning: null for unconditional branches)
- Value target
- Target address if the branch is taken (warning: null for IR internal branches)
- Value next
- Next instruction if the branch is not taken (warning: null for regular branch operation)