[LLVMbugs] [Bug 22171] New: Extremely slow compilation of static array

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri Jan 9 06:27:07 PST 2015


http://llvm.org/bugs/show_bug.cgi?id=22171

            Bug ID: 22171
           Summary: Extremely slow compilation of static array
           Product: clang
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
          Assignee: unassignedclangbugs at nondot.org
          Reporter: kartynnik at gmail.com
                CC: dgregor at apple.com, llvmbugs at cs.uiuc.edu
    Classification: Unclassified

Created attachment 13655
  --> http://llvm.org/bugs/attachment.cgi?id=13655&action=edit
The Makefile for generating and measuring test cases

A static array is initialized with structs containing unordered_sets that are
modified by member functions in place. The compilation takes 4 minutes when
there are 100 elements in the array, and I had not enough patience to wait for
the end of the compilation with 800 elements (in out code base, from where I
have narrowed this down, the compilation of a single file had finished only
after 7+ hours!).

For your convenience, attached is a Makefile that generates a source with a
given amount of elements in the array and measures the compile time for the
given compiler and optimization level, for example:
make COUNT=100 COMPILER=g++ OLEVEL=3
will create _generated100.cpp with 100 elements in the static array and measure
the time it takes g++ -O3 to compile it (on my machine, that is 1 sec).
The defaults are: 800 for COUNT, clang++ for COMPILER, 2 for OLEVEL.
The script requires m4.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150109/41897c32/attachment.html>


More information about the llvm-bugs mailing list