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: [email protected]
          Reporter: [email protected]
                CC: [email protected], [email protected]
    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.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs

Reply via email to