On 1/10/25 4:41 AM, Richard Biener wrote:
The following puts in a hard limit on ext-dce because it might end
up requiring memory on the order of the number of basic blocks
times the number of pseudo registers.  The limiting follows what
GCSE based passes do and thus I re-use --param max-gcse-memory here.

This doesn't in any way address the implementation issues of the pass,
but it reduces the memory-use when compiling the
module_first_rk_step_part1.F90 TU from 521.wrf_r from 25GB to 1GB.

Bootstrap and regtest running on x86_64-unknown-linux-gnu.

I plan to push this later today unless I hear objection.

        PR rtl-optimization/117467
        PR rtl-optimization/117934
        * ext-dce.cc (ext_dce_execute): Do nothing if a memory
        allocation estimate exceeds what is allowed by
        --param max-gcse-memory.
No objections. Thanks for taking care of it. A bit surprised it's this bad, though I guess those bitmaps might be dense for pathological cases.

Jeff

Reply via email to