aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/interface.c
diff options
context:
space:
mode:
authorGiuliano Belinassi <giuliano.belinassi@usp.br>2020-06-09 00:10:07 -0300
committerGiuliano Belinassi <giuliano.belinassi@usp.br>2020-06-09 00:10:07 -0300
commit3ec7662202099738819ea521b65faada5c0a6c70 (patch)
treed6800ab233a3578f4c2dda5b6f75f284d5446e81 /gcc/fortran/interface.c
parent374ee317356c39b6ac9d483b3648ffcb6f1d2fd4 (diff)
downloadgcc-3ec7662202099738819ea521b65faada5c0a6c70.zip
gcc-3ec7662202099738819ea521b65faada5c0a6c70.tar.gz
gcc-3ec7662202099738819ea521b65faada5c0a6c70.tar.bz2
Implement a new partitioning algorithm
Implements a new partitioning algorithm based on add_node_to_partition logic, still using a union find datastructure for quick merging partitions. libgcc is compiling, libstdc++ fails to link. gcc/ChangeLog 2020-06-08 Giuliano Belinassi <giuliano.belinassi@usp.br> * cgraphunit.c (cgraph_node::expand): Quick return if no body is available. (ipa_passes): Skip empty partitions. * gcc.c (append_split_outputs): Fix misleading identation. * ipa.c (symbol_table::remove_unreachable_nodes): Assert for split_outputs. * lto-cgraph.c (lto_apply_partition_mask): set body_removed when body is removed. * lto-partition.c: (current_working_partition): New variable. * (add_symbol_to_partition): Check if insertion on correct partition. Also check if nodes from the same COMDAT group are mapped to the partition. (union_find::print_roots): New function. (ds): New variable. (ds_print_roots): New function. (analyse_symbol_references): New function. (analyse_symbol_1): New function. (int_cast): Remove. (lto_max_no_alonevap_map): Replace with new algorithm.
Diffstat (limited to 'gcc/fortran/interface.c')
0 files changed, 0 insertions, 0 deletions