]> gcc.gnu.org Git - gcc.git/commit
rtl-optimization/98144 - tame REE memory usage
authorRichard Biener <rguenther@suse.de>
Fri, 29 Jan 2021 09:23:40 +0000 (10:23 +0100)
committerRichard Biener <rguenther@suse.de>
Tue, 4 May 2021 12:41:34 +0000 (14:41 +0200)
commit4595028e7212d6870e9e236f1f5a016b50708b7c
treed6420a5a9600bef3cfc446ed5c9e0aa30e1821b9
parentaf08d7265bb5a82f3728737476c8098458a8d210
rtl-optimization/98144 - tame REE memory usage

This changes the REE dataflow to change the explicit all-ones
starting solution to be implicit via a visited flag, removing
the need to initially start with fully populated bitmaps for
all basic-blocks.  That reduces peak memory use when compiling
the RTL checking enabled insn-extract.c testcase from PR98144
from 6GB to less than 2GB.

2021-01-29  Richard Biener  <rguenther@suse.de>

PR rtl-optimization/98144
* df.h (df_mir_bb_info): Add con_visited member.
* df-problems.c (df_mir_alloc): Initialize con_visited,
do not fully populate IN and OUT.
(df_mir_reset): Likewise.
(df_mir_confluence_0): Set con_visited.
(df_mir_confluence_n): Properly handle implicitely
fully populated IN and OUT as designated by con_visited
and update con_visited accordingly.

(cherry picked from commit a8c455bafdefdab0a7b8cdbcdb116c0086bae05e)
gcc/df-problems.c
gcc/df.h
This page took 0.060052 seconds and 5 git commands to generate.