http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54627

             Bug #: 54627
           Summary: VRP uses lots of memory and compile-time
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Keywords: compile-time-hog, memory-hog
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: rgue...@gcc.gnu.org


Part of it is due to equivalence set bitmaps becoming huge (and their
inefficient computation).  equivalences are only used when trying to
simplify comparisons (but during iteration).  So the only used
equivalence bitmaps are for operands of those.  equivalences are
generated only by asserts and SSA name copies, so they can be computed
up-front and shouldn't change (apart from handling of non-executable
edges in PHI nodes) during iteration.  At least equivalence processing
can be ignored for SSA name chains not leading up to a condition operand.

Reply via email to