GCC Middle and Back End API Reference
|
#include <tree-ssa-live.h>
Data Fields | |
partition | var_partition |
int * | partition_to_view |
int * | view_to_partition |
unsigned int | num_partitions |
unsigned int | partition_size |
int | num_basevars |
int * | partition_to_base_index |
Used to create the variable mapping when we go out of SSA form. Mapping from an ssa_name to a partition number is maintained, as well as partition number back to ssa_name. This data structure also supports "views", which work on a subset of all partitions. This allows the coalescer to decide what partitions are interesting to it, and only work with those partitions. Whenever the view is changed, the partition numbers change, but none of the partition groupings change. (ie, it is truly a view since it doesn't change anything) The final component of the data structure is the basevar map. This provides a list of all the different base variables which occur in a partition view, and a unique index for each one. Routines are provided to quickly produce the base variable of a partition. Note that members of a partition MUST all have the same base variable.
int _var_map::num_basevars |
Number of base variables in the base var list.
Referenced by var_map_base_fini().
unsigned int _var_map::num_partitions |
Current number of partitions in var_map based on the current view.
Referenced by calculate_live_on_exit(), and var_map_base_fini().
unsigned int _var_map::partition_size |
Original full partition size.
Referenced by var_map_base_fini().
int* _var_map::partition_to_base_index |
Map of partitions numbers to base variable table indexes.
Referenced by var_to_partition_to_var().
int* _var_map::partition_to_view |
Vector for managing partitions views.
Referenced by calculate_live_on_exit(), partition_to_var(), partition_view_fini(), var_map_base_fini(), and version_to_var().
partition _var_map::var_partition |
The partition manager of all variables.
Referenced by calculate_live_on_exit(), delete_var_map(), num_var_partitions(), partition_to_var(), var_map_base_fini(), and version_to_var().
int* _var_map::view_to_partition |
Referenced by calculate_live_on_exit(), num_var_partitions(), partition_view_fini(), and var_map_base_fini().