GCC Middle and Back End API Reference
|
Data Fields | |
struct expr ** | table |
unsigned int | size |
unsigned int | n_elems |
Hash table for copy propagation expressions. Each hash table is an array of buckets. ??? It is known that if it were an array of entries, structure elements `next_same_hash' and `bitmap_index' wouldn't be necessary. However, it is not clear whether in the final analysis a sufficient amount of memory would be saved as the size of the available expression bitmaps would be larger [one could build a mapping table without holes afterwards though]. Someday I'll perform the computation and figure it out.
Expression hash tables. Each hash table is an array of buckets. ??? It is known that if it were an array of entries, structure elements `next_same_hash' and `bitmap_index' wouldn't be necessary. However, it is not clear whether in the final analysis a sufficient amount of memory would be saved as the size of the available expression bitmaps would be larger [one could build a mapping table without holes afterwards though]. Someday I'll perform the computation and figure it out.
unsigned int hash_table_d::n_elems |
Number of hash table elements.
Referenced by pre_insert_copies().
unsigned int hash_table_d::size |
Size of the hash table, in elements.
Referenced by alloc_gcse_mem(), compute_hash_table_work(), load_killed_in_block_p(), and reg_available_p().
struct expr ** hash_table_d::table |
The table itself. This is an array of `set_hash_table_size' elements.
The table itself. This is an array of `expr_hash_table_size' elements.
Referenced by compute_hash_table_work(), load_killed_in_block_p(), and reg_available_p().