Module ast

Source
Expand description

Abstract syntax tree type definitions.

Structs§

Arena
An arena of objects of type T.
Assignment
An assignment, defining a value.
Block
A basic block.
BlockId
An identifier for a defined block.
BlockPc
A block path condition.
Cand
A candidate rewrite.
Constant
A constant value.
Id
An identifier for an object allocated within an arena.
Infer
The root of a left-hand side.
LeftHandSide
The left-hand side of a replacement.
LeftHandSideBuilder
A builder for a LeftHandSide.
Pc
A path condition.
Phi
A phi node.
ReplacementBuilder
A builder for a Replacement.
RightHandSide
The right-hand side of a replacement.
Type
A type.
ValueId
An identifier for a value defined by an assignment.
Var
An input variable.

Enums§

AssignmentRhs
Any value that can be assigned to a name.
Attribute
Attributes describing data-flow facts known about a particular value or result of an instruction.
Instruction
A Souper instruction.
Operand
An operand for an instruction or some other kind of operation.
Replacement
A complete optimization that replaces a left-hand side with a right-hand side.
RootAttribute
Attributes describing data-flow facts known about the root of a left- or right-hand side.
Statement
A statement in a LHS or RHS.