aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/class.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2020-10-21 09:40:09 +0200
committerRichard Biener <rguenther@suse.de>2020-10-21 10:45:08 +0200
commit028a407463ce341487103abc877032384e6427bf (patch)
tree4f08d357d27880f5d5144b31fb8f15ba307cea46 /gcc/fortran/class.c
parent4fa5dc951e9b22b61da8a4a5e0c1731d8b12a763 (diff)
downloadgcc-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