On Wed, May 31, 2017 at 10:20:51AM -0400, Aldy Hernandez wrote:
> The biggest number of SSA_NAMEs I saw was actually 472,225.  Of these,
> 357,032 were non-pointers, so could conceivably have range information. In
> reality, 77,398 had range information, so 16% of all pointer and non-pointer
> SSA_NAMEs actually have range information.

I've tried to look just at insn-recog.c with the usual stage3 flags +
-fsanitize=address,undefined and I see there
ssa_name_nodes_created
4092344
(of course, that doesn't mean there are 4M SSA_NAMEs all live at the same
time, but I think they don't go through ggc_free and thus the only way that
number goes down is during GC.  There are both 72 and 80 bytes alloc pools,
even a 32MB increase is something we shouldn't ignore.
Furthermore, as e.g. PR80917 shows, we really should track nonzero bits next
to value ranges, the current tracking of it only in tree-ssa-ccp which
doesn't have ASSERT_EXPRs nor any kind of framework to do something similar
without them is insufficient.

        Jakub

Reply via email to