diff options
author | Richard Biener <rguenther@suse.de> | 2020-07-24 13:44:09 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2020-07-31 08:22:45 +0200 |
commit | 1212cfad09378bc85860a7de22dde0cf7a19fd01 (patch) | |
tree | db2fc19d73115779ac2b55366eef77bb86fa5977 /libgcc/libgcov.h | |
parent | 3e61a2056335ca7d4e2009823efae4ee2dc950ee (diff) | |
download | gcc-1212cfad09378bc85860a7de22dde0cf7a19fd01.zip gcc-1212cfad09378bc85860a7de22dde0cf7a19fd01.tar.gz gcc-1212cfad09378bc85860a7de22dde0cf7a19fd01.tar.bz2 |
Improve var-tracking dataflow iteration order
This builds upon the rev_post_order_and_mark_dfs_back_seme improvements
and makes vt_find_locations iterate over the dataflow problems for
each toplevel SCC separately, improving memory locality and avoiding
to process nodes after the SCC before the SCC itself stabilized.
On the asan_interceptors.cc testcase this for example reduces the
number of visited blocks from 3751 to 2867. For stage3-gcc
this reduces the number of visited blocks by ~4%.
2020-07-28 Richard Biener <rguenther@suse.de>
PR debug/78288
* var-tracking.c (vt_find_locations): Use
rev_post_order_and_mark_dfs_back_seme and separately iterate
over toplevel SCCs.
Diffstat (limited to 'libgcc/libgcov.h')
0 files changed, 0 insertions, 0 deletions