Go to the previous, next section.

Result Types

Each instruction also has a field to specify the result type. The result_type and set_result_type methods may be used to access this field. If an instruction produces a result value (regardless of whether the result is actually used), the type of the result must be indicated. Otherwise, the result type should be the SUIF void type.

If the instruction produces a value, the result type must be an object type (i.e. not a function type) with non-zero size and that size must be known at compile time. This restriction is to exclude arrays with unknown or symbolic bounds, the only types without known sizes.

Go to the previous, next section.