GIMPLE_SWITCH
¶gswitch
*gimple_build_switch (tree index, tree default_label, vec
<tree> *args)
¶Build a GIMPLE_SWITCH
statement. INDEX
is the index variable
to switch on, and DEFAULT_LABEL
represents the default label.
ARGS
is a vector of CASE_LABEL_EXPR
trees that contain the
non-default case labels. Each label is a tree of code CASE_LABEL_EXPR
.
unsigned
gimple_switch_num_labels ( const gswitch *g)
¶Return the number of labels associated with the switch statement
G
.
void
gimple_switch_set_num_labels (gswitch *g, unsigned nlabels)
¶Set NLABELS
to be the number of labels for the switch statement
G
.
tree
gimple_switch_index (const gswitch *g)
¶Return the index variable used by the switch statement G
.
void
gimple_switch_set_index (gswitch *g, tree index)
¶Set INDEX
to be the index variable for switch statement G
.
tree
gimple_switch_label (const gswitch *g, unsigned index)
¶Return the label numbered INDEX
. The default label is 0, followed
by any labels in a switch statement.
void
gimple_switch_set_label (gswitch *g, unsigned index, tree label)
¶Set the label number INDEX
to LABEL
. 0 is always the default
label.
tree
gimple_switch_default_label ( const gswitch *g)
¶Return the default label for a switch statement.
void
gimple_switch_set_default_label (gswitch *g, tree label)
¶Set the default label for a switch statement.