diff options
author | Richard Biener <rguenther@suse.de> | 2020-10-21 09:40:09 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2020-10-21 10:45:08 +0200 |
commit | 028a407463ce341487103abc877032384e6427bf (patch) | |
tree | 4f08d357d27880f5d5144b31fb8f15ba307cea46 /gcc/fortran/class.c | |
parent | 4fa5dc951e9b22b61da8a4a5e0c1731d8b12a763 (diff) | |
download | gcc-028a407463ce341487103abc877032384e6427bf.zip gcc-028a407463ce341487103abc877032384e6427bf.tar.gz gcc-028a407463ce341487103abc877032384e6427bf.tar.bz2 |
Simplify CFG copying tables
This simplifies the maps between original and new basic blocks and
loops as used for CFG copying. Instead of using a pointer hash
table to allocated mapping entries use a hash_map with int_hash,
removing the indirection and code duplication. We can use -1 and
-2 as empty/deleted values as those are not valid basic-block
indices or loop numbers.
2020-10-21 Richard Biener <rguenther@suse.de>
* cfg.c (htab_bb_copy_original_entry): Remove.
(bb_copy_hasher): Likewise.
(bb_original, bb_copy, loop_copy): Use
hash_map<int_hash<int, -1, -2>, int>.
(original_copy_bb_pool): Remove.
(initialize_original_copy_tables): Adjust.
(reset_original_copy_tables): Likewise.
(free_original_copy_tables): Likewise.
(original_copy_tables_initialized_p): Likewise.
(copy_original_table_clear): Simplify.
(copy_original_table_set): Likewise.
(get_bb_original): Likewise.
(get_bb_copy): Likewise.
(get_loop_copy): Likewise.
Diffstat (limited to 'gcc/fortran/class.c')
0 files changed, 0 insertions, 0 deletions