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

             Bug #: 11811
           Summary: Greedy Register Allocator taking a loooong time on
                    module with many cleanups
           Product: new-bugs
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: new bugs
        AssignedTo: [email protected]
        ReportedBy: [email protected]
                CC: [email protected]
    Classification: Unclassified


Created attachment 7912
  --> http://llvm.org/bugs/attachment.cgi?id=7912
Original C++ testcase

This is the gcc testcase cleanup1.C (attached).  At -O1 gcc takes less than 4
seconds to compile it, while dragonegg takes 20 minutes or so.  Almost all of
the time is spent in codegen, and almost all of that is in register allocation,
namely Global Splitting.  To reproduce, run llc on the attached gzipped .ll
file.

$ llc cleanup1.ll -time-passes
...
===-------------------------------------------------------------------------===
                              Register Allocation
===-------------------------------------------------------------------------===
  Total Execution Time: 919.5335 seconds (920.2625 wall clock)

   ---User Time---   --System Time--   --User+System--   ---Wall Time---  ---
Name ---
  908.0848 ( 98.8%)   0.2160 ( 93.1%)  908.3008 ( 98.8%)  908.9710 ( 98.8%) 
Global Splitting
  10.9647 (  1.2%)   0.0160 (  6.9%)  10.9807 (  1.2%)  11.0408 (  1.2%)  Evict
   0.1200 (  0.0%)   0.0000 (  0.0%)   0.1200 (  0.0%)   0.1249 (  0.0%) 
Spiller
...
===-------------------------------------------------------------------------===
                      ... Pass execution timing report ...
===-------------------------------------------------------------------------===
  Total Execution Time: 929.9901 seconds (930.7424 wall clock)

   ---User Time---   --System Time--   --User+System--   ---Wall Time---  ---
Name ---
  919.4535 ( 98.9%)   0.2320 ( 56.9%)  919.6855 ( 98.9%)  920.4247 ( 98.9%) 
Greedy Register Allocator
   2.8242 (  0.3%)   0.0000 (  0.0%)   2.8242 (  0.3%)   2.8260 (  0.3%) 
Simple Register Coalescing

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- 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